Data compression-decompression method, program, and electronic device

ABSTRACT

An electronic device includes: a PHLCT circuit ( 15 ), which includes an input signal DCT coefficient computation module configured to compute DCT coefficients of an input signal of a subject block region in a plurality of block regions and block regions adjacent to the subject block region, respectively, an offset function DCT coefficient computation module configured to compute DCT coefficients of a gradient offset function, which offsets the gradient of the input signal at a block boundary between each subject block region and its adjacent block regions from the DCT coefficients of the input signal, and a residual computation module configured to compute a residual of the DCT coefficients of the input signal and the DCT coefficients of the gradient offset function; a quantization circuit configured to quantize the residual to obtain compressed data; and an entropy coding circuit ( 17 ) configured to encode the compressed data.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention relates to electronic devices such as a datacompression apparatus and a data decompression apparatus, which are usedfor compressing and decompressing data including various data such asimage data and audio data, and an electronic device and system includingat least one of these data compression apparatus and data decompressionapparatus. Furthermore, the present invention pertains to a datacompression method and a data decompression method using the electronicdevices and the system, and a data compression program and a datadecompression program for controlling the electronic devices and thesystem.

2. Background-Art

The Joint Photographic Expert Group (JPEG) standard is the internationalstandard for image compression technology that compresses still images.JPEG algorithms can be largely divided into two compressionmethodologies. The first methodology is based on the discrete cosinetransform (DCT), and the second methodology is a spatial domain methodperforming the differential PCM (DPCM) in the two-dimensional imagespace.

The DCT is the basis for an algorithm adapted for the present inventionand can acquire sufficient decoded image quality even with a smallnumber of bits although it has a lossy coding characteristic ofgenerally not perfectly reconstructing an original image. On the otherhand, the spatial domain method is a function added as a standard forimplementing a lossless coding characteristic of perfectlyreconstructing an original image with low compressibility. The DCT isfurther divided into a baseline process (baseline system), which is anessential function, and an extended DCT process (extended system), whichis an optional function. The baseline process is an algorithm based onthe adaptive discrete cosine transform coding (ADCT), and is therequired minimum function for all coders/decoders implementing the DCT.Image compression in the baseline process is carried out for each imagedata block of 8×8 pixels.

Currently, as such, most of the standard digital image compressionformats are based on DCT in block units. Compressibility by definitionis dependent on convergence rate of DCT coefficients since these methodsare based on the cosine series approximation. In general,compressibility decreases when the convergence of DCT coefficients isslow. Furthermore, quantization error of the DCT coefficients increasesas coding rate (bit rate) decreases, and deterioration of reconstructedimages such as blocking artifact cannot be ignored.

SUMMARY OF THE INVENTION

An object of the present invention is to provide an electronic device, adata compression method, a data decompression method, a data compressionprogram, and a data decompression program, which are capable ofcompressing digital image with improved compressibility based on DCT inblock units and eliminating blocking artifact just by adding a simpleconfiguration to the conventional devices.

The first aspect of the present invention inheres in a data compressionmethod, which divides input data equally into a plurality of blockregions and compresses the input data. Namely, the data compressionmethod according to the first aspect includes the steps of (a) computingthe DCT coefficients of an input signal in each subject block region andits adjacent block regions in the plurality of block regions; (b)computing DCT coefficients of a gradient offset function, which offsetsthe gradient of the input signal at a block boundary between eachsubject block region and its adjacent block regions from the DCTcoefficients of the input signal; (c) computing a residual of the DCTcoefficients of the input signal and the DCT coefficients of thegradient offset function; and (d) obtaining compressed data byquantizing and encoding the residual.

The second aspect of the present invention inheres in a datadecompression method, which divides input data equally into a pluralityof block regions, decompresses compressed data, which results fromcompressing the input data of each block region, and reconstructs theinput data. Namely, the data decompression method according to thesecond aspect includes the steps of (a) executing decoding anddequantization of the compressed data, and obtaining dequantized DCTcoefficients of each block region; (b) computing DCT coefficients of agradient offset function, which offsets the gradient of an input signalat a block boundary between each subject block region and its adjacentblock regions, using the dequantized DCT coefficients; (c) adding theDCT coefficients of the gradient offset function to the dequantized DCTcoefficients and approximately reconstructing the DCT coefficients ofthe input signal; (d) recovering an input signal for each of therespective block regions using the approximately reconstructed DCTcoefficients of the input signal; and (e) joining together the inputsignal for each of the respective block regions to reconstruct inputdata.

A third aspect of the present invention inheres in a data decompressionmethod, which divides input data equally into a plurality of blockregions, decompresses compressed data, which results from compressingthe input data of each of the block regions, and estimates the inputdata. Namely, the data decompression method according to the thirdaspect includes the steps of (a) executing decoding and dequantizationof the compressed data, and obtaining dequantized DCT coefficients ofeach of the respective block regions; (b) computing DCT coefficients ofa gradient offset function, which offsets the gradient of an inputsignal at a block boundary between each subject block region and itsadjacent block regions, using the dequantized DCT coefficients; (c)computing a quantization error using the DCT coefficients of thegradient offset function; (d) correcting the dequantized DCTcoefficients using the quantization error, and making an approximateestimation of the DCT coefficients of the input signal; (e) recoveringan input signal for each of the respective block regions from theapproximately reconstructed DCT coefficients of the input signal; and(f) joining together the input signal for each of the respective blockregions to reconstruct input data.

The fourth aspect of the present invention inheres in a datadecompression method, which divides input data equally into a pluralityof block regions, decompresses compressed data, which results fromcompressing the input data of each of the respective block regions, andestimates the input data. Namely, the data decompression methodaccording to the fourth aspect includes the steps of (a) executingdecoding and dequantization of the compressed data, and obtainingdequantized DCT coefficients of each of the respective block regions;(b) computing DCT coefficients of a gradient offset function, whichoffsets the gradient of an input signal of the subject block region, ata block boundary between each subject block region and its adjacentblock regions, using the dequantized DCT coefficients; (c) computing aquantization error using the DCT coefficients of the gradient offsetfunction; (d) adding a quadratic surface, which reduces blockingartifact, to adjacent block regions and computing DCT coefficients ofthe quadratic surface; (e) correcting the dequantized DCT coefficientsusing the quantization error and the DCT coefficients of the quadraticsurface, and approximately reconstructing the DCT coefficients of theinput signal; (f) recovering an input signal for each of the blockregions using the approximately reconstructed DCT coefficients of theinput signal; and (g) joining together the input signal for each of therespective block regions to reconstruct input data.

The fifth aspect of the present invention inheres in an electronicdevice, which divides input data equally into a plurality of blockregions and compresses the input data. Namely, the electronic deviceaccording to the fifth aspect includes: (a) an input signal DCTcoefficient computation module, which computes the DCT coefficients ofan input signal in each subject block region and its adjacent blockregions in the plurality of block regions; (b) an offset function DCTcoefficient computation module, which computes the DCT coefficients of agradient offset function, which offsets the gradient of the input signalat a block boundary between each subject block region and its adjacentblock regions using the DCT coefficients of the input signal; (c) aresidual computation module, which computes a residual of the DCTcoefficients of the input signal and the DCT coefficients of thegradient offset function; (d) a quantization circuit, which obtainscompressed data by quantizing and encoding the residual; and (e) acoding circuit, which encodes the compressed data.

The sixth aspect of the present invention inheres in an electronicdevice, which divides input data equally into a plurality of blockregions, and decompresses compressed data, which results fromcompressing the input data of each of the block regions, andreconstructs the input data. Namely, the electronic device according tothe sixth aspect includes: (a) a decoding circuit, which decodes thecompressed data; (b) a dequantization circuit, which executes thedequantization of the decoded compressed data, and obtains thedequantized DCT coefficients in each block region; (c) a DCT coefficientinput module, which inputs the dequantized DCT coefficients to a subjectblock region and its adjacent block regions, respectively; (d) an offsetfunction DCT coefficient computation module, which computes the DCTcoefficients of a gradient offset function, which offsets the gradientof an input signal in the subject block region, at a block boundarybetween each subject block region and the adjacent block regions, usingthe dequantized DCT coefficients; (e) an input signal DCT coefficientapproximation/reconstruction module, which adds the DCT coefficients ofthe gradient offset function to the dequantized DCT coefficients andapproximately reconstructs DCT coefficients of the input signal; and (f)a block joining circuit, which obtains an input signal in each of theblock regions using the approximately reconstructed DCT coefficients ofthe input signal, and joins together the input signal in each blockregions to reconstruct the input data.

The seventh aspect of the present invention inheres in an electronicdevice, which divides input data equally into plurality of blockregions, and decompresses compressed data, which results fromcompressing the input data of each of the block regions, and estimatesthe input data. Namely, the electronic device according to the seventhaspect includes: (a) a decoding circuit, which decodes the compresseddata; (b) a dequantization circuit, which executes the dequantization ofthe decoded compressed data, and obtains the dequantized DCTcoefficients of each of the respective block regions; (c) a DCTcoefficient input module, which receives the dequantized DCTcoefficients to a subject block region and its adjacent block regions,respectively; (d) an offset function DCT coefficient computation module,which computes the DCT coefficients of a gradient offset function, whichoffsets the gradient of an input signal in the subject block region, ata block boundary between the subject block region and its adjacent blockregions, using the dequantized DCT coefficients; (e) a quantizationerror computation module, which computes a quantization error using theDCT coefficients of the gradient offset function; (f) a quantizationerror correction module, which corrects the dequantized DCT coefficientsusing the quantization error, and making an approximate estimation ofDCT coefficients of the input signal; and (g) a block joining circuit,which obtains an input signal for each of the block regions using theapproximately estimated DCT coefficients of the input signal, and joinstogether the input signal in each block region to estimate the inputdata.

The eighth aspect of the present invention inheres in an electronicdevice, which divides input data equally into plurality of blockregions, and decompresses compressed data, which results fromcompressing the input data of each of the block regions, and estimatesthe input data. Namely, the electronic device according to the eighthaspect includes: (a) a decoding circuit, which decodes the compresseddata; (b) a dequantization circuit, which executes the dequantization ofthe decoded compressed data, and obtains the dequantized DCTcoefficients of each of the respective block regions; (c) a DCTcoefficient input module, which inputs the dequantized DCT coefficientsto a subject block region and its adjacent block regions, respectively;(d) an offset function DCT coefficient computation module, whichcomputes the DCT coefficients of a gradient offset function, whichoffsets the gradient of an input signal in the subject block region, ata block boundary between each subject block region and its adjacentblock regions, using the dequantized DCT coefficients; (e) aquantization error computation module, which computes a quantizationerror using the DCT coefficients of the gradient offset function; (f) aquadratic surface DCT coefficient computation module, which adds aquadratic surface reducing blocking artifact to the adjacent blockregions and computes the DCT coefficients of the quadratic surface; (g)a quadratic surface quantization error correction module, which correctsthe dequantized DCT coefficients using the quantization error and theDCT coefficients of the quadratic surface, and approximately estimatesDCT coefficients of the input signal; (h) a module recovering an inputsignal for each of the respective block regions from the approximatelyestimated DCT coefficients of the input signal; and (i) a block joiningcircuit, which recovers an input signal for each of the block regionsusing the approximately estimated DCT coefficients of the input signal,and joins together the input signal for each of the respective blockregions to estimate the input data.

The ninth aspect of the present invention inheres in an electronicdevice including: (a) a first memory unit, which stores input data; (b)a block dividing circuit, which divides input data read out from thefirst memory unit equally into plurality of block regions; (c) an inputsignal DCT coefficient computation module, which computes the DCTcoefficients of an input signal in each subject block region and itsadjacent block regions in the plurality of block regions; (d) an offsetfunction DCT coefficient computation module, which computes the DCTcoefficients of a gradient offset function, which offsets the gradientof the input signal at a block boundary between each subject blockregion and its adjacent block regions from the DCT coefficients of theinput signal; (e) a residual computation module, which computes aresidual of the DCT coefficients of the input signal and the DCTcoefficients of the gradient offset function; (f) a quantizationcircuit, which obtains compressed data by quantizing and encoding theresidual; (g) a coding circuit, which encodes the compressed data; (h) asecond memory unit, which stores the encoded, compressed data; (i) adecoding circuit, which decodes the compressed data read out from thesecond memory unit; (j) a dequantization circuit, which executes thedequantization of the decoded compressed data, and obtains thedequantized DCT coefficients of each of the respective block regions;(k) a DCT coefficient input module, which inputs the dequantized DCTcoefficients to a subject block region and its adjacent block regions,respectively; (l) an offset function DCT coefficient computation module,which computes the DCT coefficients of a gradient offset function, whichoffsets the gradient of the input signal in the subject block region, ata block boundary between each subject block region and its adjacentblock regions, using the dequantized DCT coefficients; (m) an inputsignal DCT coefficient approximation/reconstruction module, which addsthe DCT coefficients of the gradient offset function to the dequantizedDCT coefficients and approximately reconstructs DCT coefficients of theinput signal; and (n) a block joining circuit, which recovers an inputsignal for each of the block regions from the approximatelyreconstructed DCT coefficients of the input signal, and joins togetherthe input signal for each of the respective block regions to reconstructthe input data.

The tenth aspect of the present invention inheres in a data compressionprogram for executing a series of instructions on an encoder, whichdivides input data equally into plurality of block regions andcompresses the input data, including: (a) an instruction to compute DCTcoefficients of an input signal in each subject block region and itsadjacent block regions in the plurality of block regions; (b) aninstruction to compute DCT coefficients of a gradient offset function,which offsets the gradient of the input signal at a block boundarybetween each subject block region and its adjacent block regions usingthe DCT coefficients of the input signal; (c) an instruction to computea residual of the DCT coefficients of the input signal and the DCTcoefficients of the gradient offset function; and (d) an instruction toobtain compressed data by quantizing and encoding the residual.

The eleventh aspect of the present invention inheres in a datadecompression program for executing a series of instructions on adecoder, which divides input data equally into plurality of blockregions, and decompresses the input data, including: (a) an instructionto execute decoding and dequantization of the compressed data, andobtain dequantized DCT coefficients of each of the respective blockregions; (b) an instruction to compute DCT coefficients of a gradientoffset function, which offsets a gradient of an input signal in thesubject block region, at a block boundary between each subject blockregion and its adjacent block regions, using the dequantized DCTcoefficients; (c) an instruction to add the DCT coefficients of thegradient offset function to the dequantized DCT coefficients andapproximately reconstruct DCT coefficients of the input signal; (d) aninstruction to recover an input signal for each of the respective blockregions from the approximately reconstructed DCT coefficients of theinput signal; and (e) an instruction to join together the input signalin each of the respective block regions to reconstruct input data.

The twelfth aspect of the present invention inheres in a datadecompression program for executing a series of instructions on adecoder, which divides input data equally into plurality of blockregions, and estimates the input data, including: (a) an instruction toexecute decoding and dequantization of the compressed data, and obtaindequantized DCT coefficients of each of the respective block regions;(b) an instruction to compute DCT coefficients of a gradient offsetfunction, which offsets the gradient of an input signal in the subjectblock region, at a block boundary between the subject block region andits adjacent block regions, using the dequantized DCT coefficients; (c)an instruction to compute a quantization error from the DCT coefficientsU^(Q) of the gradient offset function; (d) n instruction to correct thedequantized DCT coefficients using the quantization error, and make anapproximate estimation of DCT coefficients of the input signal; (e) aninstruction to recover an input signal for each of the respective blockregions from the approximately estimated DCT coefficients of the inputsignal; and (f) an instruction to join together the input signal in eachof the respective block regions to estimate the input data.

The thirteenth aspect of the present invention inheres in a datadecompression program for executing a series of instructions on adecoder, which divides input data equally into plurality of blockregions, and estimates the input data, including: (a) an instruction toexecute decoding and dequantization of the compressed data, and obtaindequantized DCT coefficients of each of the respective block regions;(b) an instruction to compute DCT coefficients of a gradient offsetfunction, which offsets the gradient of an input signal in the subjectblock region, at a block boundary between each subject block region andits adjacent block regions, using the dequantized DCT coefficients; (c)an instruction to compute a quantization error from the DCT coefficientsU^(Q) of the gradient offset function; (d) an instruction to add aquadratic surface, which reduces blocking artifact, to adjacent blockregions, and compute DCT coefficients of the quadratic surface; (e) aninstruction to correct the dequantized DCT coefficients using thequantization error and the DCT coefficients of the quadratic surface,and approximately estimate DCT coefficients of the input signal; (f) aninstruction to recover an input signal for each of the respective blockregions from the approximately estimated DCT coefficients of the inputsignal; and (g) an instruction to join together the input signal in eachof the respective block regions to estimate the input data.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a block diagram schematically illustrating a datacompression/decompression system according to a first embodiment of thepresent invention;

FIG. 2 is a block diagram illustrating a logical configuration of aPHLCT circuit in the data compression/decompression system according tothe first embodiment of the present invention;

FIG. 3 is a diagram schematically illustrating image data blocks, whichare divided by a block dividing circuit in a datacompression/decompression system according to first through thirdembodiments of the present invention;

FIG. 4 is a diagram illustrating that a block unit shown in FIG. 3 isimplemented by 8×8 (more generally N×N) pixels;

FIG. 5( a) illustrates mathematical background for the datacompression/decompression system according to the first embodiment ofthe present invention, such that an input signal, which is essentiallydiscrete multivalued data, is schematically represented as a continuousinput signal function f(x) for convenience of explanation; FIG. 5( b)illustrates mathematical background for the datacompression/decompression system according to the first embodiment ofthe present invention, where a ‘gradient offset function’ u(x), whichoff sets a gradient of the input signal function f(x) is schematicallyrepresented; FIG. 5( c) is a diagram schematically illustrating thatgradient (first derivative) of a residual v(x)=f(x)−u(x) is zero at aboundary along the x direction of a two-dimensional block region Ωindicated by dotted lines; and FIG. 5( d) is a diagram schematicallyillustrating that the residual v(x)=f(x)−u(x) continues into theadjacent two-dimensional block regions Ω since the gradient of theresidual v(x)=f(x)−u(x) is zero at a boundary along the x direction ofthe two-dimensional block region Ω indicated by dotted lines;

FIG. 6( a) is a diagram illustrating pixels or components in a first rowand a first column of the two-dimensional block regions Ω implemented by8×8 pixels shown in FIG. 3 by hatching slash marks; FIG. 6( b) is adiagram illustrating pixels or components where k₁·k₂>0 in thetwo-dimensional block regions Ω implemented by 8×8 pixels shown in FIG.3 by hatching slash marks;

FIG. 7 schematically illustrates how to search for the gradient offsetfunction u(x) in a direction along a coordinate x_(i) with respect toinput signal functions f^(a) and f^(b) in each of the adjacenttwo-dimensional block regions Ω^(a) and Ω^(b);

FIG. 8 is a flowchart illustrating a data compression method using thePHLCT circuit in the data compression/decompression system according tothe first embodiment of the present invention;

FIGS. 9( a) through 9(f) are schematic diagrams illustrating in detailthe data compression method according to the first embodiment of thepresent invention using five data blocks in correspondence with theflowchart of FIG. 8;

FIG. 10 is a block diagram illustrating a logical configuration of aninverse PHLCT (IPHLCT) circuit in the data compression/decompressionsystem according to the first embodiment of the present invention;

FIG. 11 is a flowchart illustrating a data decompression method usingthe IPHLCT circuit in the data compression/decompression systemaccording to the first embodiment of the present invention;

FIGS. 12( a) through 12(e) are schematic diagrams illustrating in detailthe data decompression method according to the first embodiment of thepresent invention using five data blocks in correspondence with theflowchart of FIG. 11;

FIG. 13 is a block diagram schematically illustrating a datacompression/decompression system according to a second embodiment of thepresent invention;

FIG. 14 is a block diagram illustrating a logical configuration of apartial mode PHLCT (PPHLCT) circuit in the datacompression/decompression system according to the second embodiment ofthe present invention;

FIG. 15 is a flowchart illustrating a data decompression method usingthe PPHLCT circuit in the data compression/decompression systemaccording to the second embodiment of the present invention;

FIGS. 16( a) through 16(d) are schematic diagrams illustrating in detailthe data decompression method according to the second embodiment of thepresent invention using five data blocks in correspondence with theflowchart of FIG. 15;

FIG. 17 is a block diagram illustrating a logical configuration of apartial mode PHLCT (PPHLCT) circuit in a data compression/decompressionsystem according to a modified example of the second embodiment of thepresent invention;

FIG. 18 is a flowchart illustrating a data decompression method usingthe PPHLCT circuit in the data compression/decompression systemaccording to the modified example of the second embodiment of thepresent invention;

FIGS. 19( a) through 19(f) are schematic diagrams illustrating in detailthe data decompression method according to the modified example of thesecond embodiment of the present invention using five data blocks incorrespondence with the flowchart of FIG. 18;

FIG. 20( a) is a diagram illustrating a standard test original Lennaimage used when visually evaluating the performance of a datacompression/decompression system; FIG. 20( b) is a diagram illustratinga standard original Barbara image used when visually evaluating theperformance of a data compression/decompression system;

FIG. 21( a) is a graph where abscissa represents coding rate (bit rate)while ordinate represents values of MSSIM for the original Lenna image,comparing the performance of the conventional technology (DCT) to thoseof the first embodiment (PHLCT) and the modified example of the secondembodiment (PPHLCT); FIG. 21( b) is a graph where abscissa representscoding rate and ordinate represents values of PSNR when using theoriginal Lenna image, comparing the performance of the conventionaltechnology (DCT) to those of the first embodiment (PHLCT) and themodified example of the second embodiment (PPHLCT);

FIG. 22( a) is a graph where abscissa represents coding rate (bit rate)while ordinate represents values of MSSIM when using the originalBarbara image, comparing the performance of the conventional technology(DCT) to those of the first embodiment (PHLCT) and the modified exampleof the second embodiment (PPHLCT); FIG. 22( b) is a graph where abscissarepresents coding rate while ordinate represents values of PSNR whenusing the original Barbara image, comparing the performance theconventional technology (DCT) to those of the first embodiment (PHLCT)and the modified example of the second embodiment (PPHLCT);

FIG. 23( a) is a graph where abscissa represents values of PSNR whileordinate represents reduction rate of coding rate (compression rate) forDCT (JPEG standard) when using the original Lenna image, comparing theperformance of the conventional technology (DCT) to those of the firstembodiment (PHLCT) and the modified example of the second embodiment(PPHLCT); FIG. 23( b) is a graph where abscissa represents values ofPSNR while ordinate represents reduction rate of coding rate(compression rate) for DCT (JPEG standard) when using the originalBarbara image, comparing the performance of the conventional technology(DCT) to those of the first embodiment (PHLCT) and the modified exampleof the second embodiment (PPHLCT);

FIG. 24 shows examples of reconstructed images at a coding rate(compression rate) of 0.15 bpp; FIG. 24( a) is a reconstructed image inthe case of applying DCT based on the JPEG standard according to theconventional technology; FIG. 24( b) is a reconstructed image in thecase of applying the modified example of the second embodiment (PPHLCT)when using the original Lenna image; FIG. 24( c) is a reconstructedimage in the case of applying the first embodiment (PHLCT) when usingthe original Lenna image; FIG. 24( d) is a reconstructed image in thecase of applying normal DCT (JPEG standard) when using the originalBarbara image; FIG. 24( e) is a reconstructed image in the case ofapplying the modified example of the second embodiment (PPHLCT) whenusing the original Barbara image; and FIG. 24( f) is a reconstructedimage in the case of applying the first embodiment (PHLCT) when usingthe original Barbara image;

FIG. 25 shows examples of reconstructed images at a coding rate(compression rate) of 0.3 bpp; FIG. 25( a) is a reconstructed image inthe case of applying DCT based on the JPEG standard according to theconventional technology; FIG. 25( b) is a reconstructed image in thecase of applying the modified example of the second embodiment (PPHLCT)when using the original Lenna image; FIG. 25( c) is a reconstructedimage in the case of applying the first embodiment (PHLCT) when usingthe original Lenna image; FIG. 25( d) is a reconstructed image in thecase of applying normal DCT (JPEG standard) when using the originalBarbara image; FIG. 25( e) is a reconstructed image in the case ofapplying the modified example of the second embodiment (PPHLCT) whenusing the original Barbara image; and FIG. 25( f) is a reconstructedimage in the case of applying the first embodiment (PHLCT) when usingthe original Barbara image;

FIG. 26 is a block diagram schematically illustrating a datacompression/decompression system according to a third embodiment of thepresent invention;

FIG. 27( a) is a block diagram illustrating a logical configuration of aderivative matching local cosine transform (DMLCT) circuit in the datacompression/decompression system according to the third embodiment ofthe present invention, and FIG. 27( b) is a block diagram illustrating alogical configuration of an inverse derivative matching local cosinetransform (IDMLCT) circuit in the data compression/decompression systemaccording to the third embodiment of the present invention;

FIG. 28 is a flowchart illustrating a data compression method using theDMLCT circuit in the data compression/decompression system according tothe third embodiment of the present invention;

FIGS. 29( a) through 29(e) are schematic diagrams illustrating in detailthe data compression method according to the third embodiment of thepresent invention using three one-dimensional data blocks incorrespondence with the flowchart of FIG. 28;

FIG. 30 is a flowchart illustrating a data decompression method usingthe IDMLCT circuit in the data compression/decompression systemaccording to the third embodiment of the present invention;

FIGS. 31( a) through 31(d) are schematic diagrams illustrating in detailthe data decompression method according to the third embodiment of thepresent invention using three one-dimensional data blocks incorrespondence with the flowchart of FIG. 30;

FIG. 32( a) is a graph where ordinate represents PSNR while abscissarepresents reduction rate of coding rate (compression rate) for the datacompression/decompression system according to the first embodiment(PHLCT) and the compression/decompression system according to the thirdembodiment (DMLCT) when using the original Lenna image; and FIG. 32( b)is a graph where ordinate represents PSNR while abscissa representsreduction rate of coding rate (compression rate) for the datacompression/decompression system according to the first embodiment(PHLCT) and the compression/decompression system according to the thirdembodiment (DMLCT) when using the original Barbara image;

FIG. 33 is a block diagram schematically illustrating a datacompression/decompression system according to another embodiment of thepresent invention; and

FIG. 34 is a block diagram schematically illustrating a datacompression/decompression system according to yet another embodiment ofthe present invention.

DETAILED DESCRIPTION OF THE INVENTION

First through third embodiments of the present invention are describedforthwith while referencing the diagrams. The same or similar symbolsare applied to the same or similar parts throughout the appendeddrawings. In addition, the first through third embodiments givenforthwith illustrate devices, methods, and programs for embodying thetechnical idea of the present invention, and that technical idea of thepresent invention is not limited to the following materials, shapes,structures, arrangements or the like. The technical idea of the presentinvention may be modified into various modifications within the scope ofthe appended claims.

First Embodiment

A data compression/decompression system according to a first embodimentof the present invention includes a transmitting terminal 5, atransmission channel 32, which transmits compressed image data(hereafter referred to as ‘compressed data’) sent from the transmittingterminal 5, and a receiving terminal 6, which receives the compresseddata sent from the transmitting terminal 5 via the transmission channel32, decompresses this compressed data, and then displays thedecompressed image data, as shown in FIG. 1. The transmission channel 32includes an information network (computer network) such as LAN, WAN, theInternet, and an intranet, but it may be a wireless transmissionchannel.

The transmitting terminal 5 includes an encoder 1, an imaging device 11,a signal processing circuit 12, an input side frame memory 13, atransmitting circuit 31, a transmitting side quantization table storageunit 18, and a transmitting side Huffman code table storage unit 19. Theencoder 1 includes a block dividing circuit 14, a polyharmonic localcosine transform (PHLCT) circuit 15, a quantization circuit 16, and anentropy coding circuit 17. In the case where the transmission channel 32is an information network such as the Internet, the transmitting circuit31 corresponds to a data circuit-terminating device such as a MODEM, adigital service unit (DSU), a network control unit (NCU), acommunication control unit (CCU), and a communication control processor(CCP). On the other hand, if the transmission channel 32 is a wirelesstransmission channel, the transmitting circuit 31 may be constituted bya low noise amplifier connected to an antenna (receiving antenna) 3, amixer connected to this low noise amplifier, an intermediate frequency(IF) amplifier connected to the mixer, and a demodulator connected tothe intermediate frequency amplifier.

The receiving terminal 6 includes a decoder 2, an output side framememory 25, a display 27, a display circuit 26, a receiving circuit 33, areceiving side quantization table storage unit 29, and a receiving sideHuffman code table storage unit 28. The decoder 2 includes an entropydecoding circuit 21, a dequantization circuit 22, an inverse PHLCT(IPHLCT) circuit 23, and a block joining circuit 24. In the case wherethe transmission channel 32 is an information network such as theInternet, the receiving circuit 33 corresponds to a datacircuit-terminating device such as a MODEM, a DSU, an NCU, a CCU, and aCCP.

The imaging device 11 of the transmitting terminal 5 is constituted by aCCD, and generates an output signal by photographing a subject image.The signal processing circuit 12 generates image data for each framefrom the output signal of the imaging device 11. Each frame image datagenerated by the signal processing circuit 12 is transferred to theinput side frame memory 13.

The display circuit 26 of the receiving terminal 6 generates an imagesignal from each frame image data transferred from the decoder 2. Thedisplay 27 displays the image signal generated by the display circuit 26as the subject image.

The input side frame memory 13 and the output side frame memory 25 maybe constituted by rewritable semiconductor memory such as SDRAM, DRAM,and random DRAM and write in and store the transferred image data foreach frame, then reading out the stored image data frame by frame.

In FIG. 1, each frame image data read out from the input side framememory 13 is transferred to the encoder 1. In the encoder 1, the blockdividing circuit 14 divides the image data of a single frame into aplurality of blocks of 8×8 pixels according to the JPEG standard (seeFIG. 4), and the PHLCT circuit 15 compresses multivalued image data ofeach block. In other words, as shown in FIG. 2, the PHLCT circuit 15includes an input image DCT coefficient computation module (input signalDCT coefficient computation module) 151, a first offset function DCTcoefficient computation module 152, a second offset function DCTcoefficient computation module 153, and a residual computation module154, captures the image data of each single frame block as shown in FIG.3 from the block dividing circuit 14, and executes PHLCT on that imagedata (details of the PHLCT circuit 15 are given later.)

The quantization circuit 16 quantizes DCT coefficients for a residualV=F−U, which are supplied from the PHLCT circuit 15 by referencingquantization thresholds stored in the transmitting side quantizationtable storage unit 18. Namely, the quantization circuit 16 divides theDCT coefficients by the quantization thresholds shown in Table 2,resulting in quantization coefficients as quotients. As theaforementioned quantization thresholds, large values are set for highfrequency components, and small values are set for low frequencycomponents. Note that there are few high frequency components for commonimages of scenes from nature and the like. As a result, the quantizationcoefficients after quantization of most of the high frequency componentsare zero. The quantization thresholds stored in the transmitting sidequantization table storage unit 18 are used to determine image qualityfor the compression rate for the compressed data.

The quantization coefficients obtained in this way are retrieved in ascanning order called the zigzag scan, and input to the entropy codingcircuit 17. The entropy coding circuit 17 converts the DCT coefficientsquantized by the quantization circuit 16 to variable length codes byreferencing Huffman codes stored in the transmitting side Huffman codetable storage unit 19, generating compressed data in block units. Withthe entropy coding circuit 17, DC components in the upper left corner ofthe blocks and remaining AC components are divided and encoded, and theAC components are grouped into a zero run length or continuous number ofcoefficients of zero (invalid coefficients) and a coefficient other thanzero (valid coefficient), and the resulting groups are encoded accordingto a Huffman code table. The Huffman codes stored in the transmittingside Huffman code table storage unit 19 are variable length codesallocated to the quantized DCT coefficients according to pre-computedoccurrence rates, where short ones are allocated to codes with a highoccurrence rate.

The compressed data in block units generated by the entropy codingcircuit 17 is transferred to the transmission channel 32 via thetransmitting circuit 31. The compressed data sent from the transmittingterminal 5 via the transmission channel 32 is received by the receivingcircuit 33 of the receiving terminal 6. The compressed data input viathe receiving circuit 33 is transferred to the entropy decoding circuit21 of the decoder 2.

The entropy decoding circuit 21 converts the compressed data in blockunits transferred via the receiving circuit 33 to variable length codesby referencing the Huffman codes stored in the receiving side Huffmancode table storage unit 28, thereby generating decompressed image data(hereafter referred to as ‘decompressed data’) in block units. TheHuffman codes stored in the receiving side Huffman code table storageunit 28 are variable length codes allocated to the decompressed dataaccording to pre-computed occurrence rates, where short ones areallocated to codes with a high occurrence rate. The dequantizationcircuit 22 dequantizes the decompressed data in block units generated bythe entropy decoding circuit 21 by referencing the quantizationthresholds stored in the transmitting side quantization table storageunit 29, thereby generating the DCT coefficients. The quantizationthresholds stored in the receiving side quantization table storage unit29 determine image quality of the recovered image, which results fromdecompressing the compressed data.

As shown in FIG. 10, the inverse PHLCT circuit 23 includes a residualinput module 231, a first offset function DCT coefficient computationmodule 232, a second offset function DCT coefficient computation module233, and an input image DCT coefficient approximation/reconstructionmodule 234, and subjects the DCT coefficients generated by thedequantization circuit 22 to inverse PHLCT (details of the inverse PHLCTcircuit 23 are given later.) The decompressed data in block units havingbeen subjected to inverse polyharmonic local cosine transform by theinverse PHLCT circuit 23 is joined together by the block joining circuit24, becoming frame data.

Each frame data joined together by the block joining circuit 24 istransferred to the output side frame memory 25. The output side framememory 25 writes and stores each frame image data transferred from thedecoder 2. The display circuit 26 generates an image signal from theframe image data transferred from the decoder 2, and then displays thatimage signal as the subject image on the display 27.

<Polyharmonic Local Cosine Transform (PHLCT) Circuit>

Before we explain the PHLCT circuit 15, let us consider the input signalfunction f for the two-dimensional block regions Ω shown in FIG. 3. Theinput signal function f on the actual image processing unit is providedonly for nondiscrete data, but for illustrative purposes, f(x) istreated as a continuous signal. The two-dimensional block region Ω shownin FIG. 3 consists of 8×8 pixels as shown in FIG. 4.

With the data compression/decompression system according to the firstembodiment of the present invention, a function u(x) as shown in FIG. 5(b) is focused on as a function offsetting a gradient of the input signalfunction f(x) (hereafter referred to as ‘gradient offset function’)shown in FIG. 5( a). FIGS. 5( a) through 5(d) respectively show aboundary of the two-dimensional block region Ω along the x directionwith two longitudinal dotted lines. Convergence of the DCT coefficientsis improved using a residual v(x)=f(x)−u(x) as shown in FIG. 5( c). Forthe gradient offset function u, a solution u to the following Neumannboundary value problem of Poisson's equation is employed,

$\begin{matrix}\left\lbrack {{Eq}.\mspace{14mu} 1} \right\rbrack & \; \\\left\{ {\begin{matrix}{{\Delta\; u} = K} & {{{in}\mspace{14mu}\Omega},} \\{\frac{\partial u}{\partial v} = \frac{\partial f}{\partial v}} & {{{on}\mspace{14mu}{\partial\Omega}},}\end{matrix}{where}} \right. & (1) \\\left\lbrack {{Eq}.\mspace{14mu} 2} \right\rbrack & \; \\{{{K\text{:}} = {\frac{1}{\Omega }{\int_{\partial\Omega}{{{\partial f}/{\partial v}}\ {\mathbb{d}{\sigma(x)}}}}}},} & \;\end{matrix}$|Ω| represents the area of a block. The function u is the minimizer ofthe mean squared curvature integral of the class C² functions offsettinga gradient of an input signal at the block boundary, as indicated by thefollowing theorem: “Suppose that a function p is of class C² in a closedregion Ω (bar) and that M(p) is the mean squared curvature integral of pon Ω (bar),

$\begin{matrix}\left\lbrack {{Eq}.\mspace{14mu} 3} \right\rbrack \\{{{M(p)}\text{:}} = {\int_{\Omega}{\left( {\Delta\; p} \right)^{2}\ {\mathbb{d}x}}}}\end{matrix}$then M(u)≦M(p) is satisfied for any p satisfying the Neumann boundarycondition ∂p/∂ν=∂f/∂ν on ∂Ω″. Note that in this specification, Ω (bar)means[Eq. 4]Ω

Normally, the convergence rate of DCT coefficients is known to followO(∥k∥⁻²) asymptotically. Here, k=(k1, k2) is a spatial frequency indexfor each block. On the other hand, with the processing in the PHLCTcircuit 15 of the data compression/decompression system according to thefirst embodiment, the convergence rate of DCT coefficients for aresidual v follows O(∥k∥⁻⁴).

Next, an image processing method for the data compression/decompressionsystem according to the first embodiment regarding the input signalfunction f provided discretely is described. While 8×8 lattice pointsare exemplified in FIG. 4, sampling points of the input signal functionf(x,y) are, more generally, arranged at N×N lattice points (xi, yj) on aunit square region;Ω=(0,1)²={(x,y)|0<x<1,0<y<1}wherex _(i)=(0.5+i)/N, y _(j)=(0.5+j)/N, (i,j=0,1, . . . , N−1)A gradient of the input signal function f at the discrete pointsarranged around the region Ω is[Eq. 5]g _(i) ⁽¹⁾ :=−f _(y)(χ_(i),0), g _(i) ⁽²⁾ :=f _(y)(χ_(i),1) g _(j) ⁽³⁾:=−f _(χ)(0,y _(j)),g _(j) ⁽⁴⁾ :=f _(χ)(1,y _(j)), i,j=0,1, . . . , N−1,  (2)wherefx:=∂f(x,y)/∂x andfy:=∂f(x,y)/∂y.The Neumann boundary condition for Poisson's equation (1) isapproximated using a one-dimensional discrete cosine series:

$\begin{matrix}\left\lbrack {{Eq}.\mspace{14mu} 6} \right\rbrack & \; \\{\begin{matrix}{{{{g^{(l)}(t)}\text{:}} = {\sqrt{\frac{2}{N}}{\sum\limits_{k = 0}^{N - 1}\;{\lambda_{k}G_{k}^{(l)}\cos\;\pi\;{kt}}}}},} \\{{= {\sqrt{\frac{2}{N}}\left( {\frac{G_{0}^{(l)}}{\sqrt{\overset{\_}{2}}} + {\sum\limits_{k = 1}^{N - 1}\;{G_{k}^{(l)}\cos\;\pi\;{kt}}}} \right)}},{0 \leq t \leq 1},} \\{{t = 1},2,3,4,}\end{matrix}{where}{{\lambda_{k}\text{:}} = \left\{ \begin{matrix}{1/\sqrt{2}} & {{{{if}\mspace{14mu} k} = 0},} \\1 & {{otherwise},}\end{matrix} \right.}} & (3)\end{matrix}$and {G_(k) ⁽¹⁾}_(0≦k≦N−1) are one-dimensional DCT coefficients ofgradients g₀ ⁽¹⁾, g₁ ⁽¹⁾, . . . , and g_(N−1) ⁽¹⁾ of the function f atthe boundary of Ω. In this case, the gradient offset function u orsolution to Poisson's equation (1) is

$\begin{matrix}\left\lbrack {{Eq}.\mspace{14mu} 7} \right\rbrack & \; \\{{{u\left( {x,y} \right)} = {{u^{(1)}\left( {x,y} \right)} + {u^{(2)}\left( {x,y} \right)} + {u^{(3)}\left( {x,y} \right)} + {u^{(4)}\left( {x,y} \right)}}}\mspace{70mu}\begin{matrix}{= {\sqrt{\frac{2}{N}}{\sum\limits_{k = 0}^{N - 1}\;{\lambda_{k}\left\{ {{\left( {{G_{k}^{(1)}{\psi_{k}\left( {y - 1} \right)}} + {G_{k}^{(2)}{\psi_{k}(y)}}} \right)\cos\;\pi\;{kx}} +} \right.}}}} \\{\left. {\left( {{G_{k}^{(3)}{\psi_{k}\left( {x - 1} \right)}} + {G_{k}^{(4)}{\psi_{k}(x)}}} \right)\cos\;\pi\;{ky}} \right\} + {c.}}\end{matrix}} & (4)\end{matrix}$where c is an appropriate constant

${\psi_{k}(t)}:=\left\{ \begin{matrix}{t^{2}/2} & {{{{if}\mspace{14mu} k} = 0},} \\{\cos\; h\;\pi\;{{kt}/\left( {\pi\; k\; s\;{in}\; h\;\pi\; k} \right)}} & {{otherwise}.}\end{matrix} \right.$Furthermore, DCT coefficients U_(k1, k2) (k1, k2=0, 1, . . . , N−1) inthe solution u(x, y) are provided through the following equation:

$\begin{matrix}\left\lbrack {{Eq}.\mspace{14mu} 8} \right\rbrack & \; \\{{U_{k_{1},k_{2}} = {{G_{k_{1}}^{(1)}\eta_{k_{1},k_{2}}} + {G_{k_{1}}^{(2)}\eta_{k_{1},k_{2}}^{*}} + {G_{k_{2}}^{(3)}\eta_{k_{2},k_{1}}} + {G_{k_{2}}^{(4)}\eta_{k_{2},k_{1}}^{*}}}},{where}} & (5) \\{{\eta_{k,m}:={\lambda_{m}\sqrt{\frac{2}{N}}{\sum\limits_{i = 0}^{N - 1}{{\psi_{k}\left( {x_{i} - 1} \right)}\cos\;\pi\;{mx}_{i}}}}},{\eta_{k,m}^{*}:={\lambda_{m}\sqrt{\frac{2}{N}}{\sum\limits_{i = 0}^{N - 1}{{\psi_{k}\left( x_{i} \right)}\cos\;\pi\;{{mx}_{i}.}}}}}} & (6)\end{matrix}$Clearly, η_(k,m) and η*_(k,m) can be computed independently of inputsignals. For reference, N=8, namely a value of η_(k,m) in the case of an8×8 pixel block size shown in FIG. 4 is given in Table 1.

TABLE 1 m = 0 m = 1 m = 2 m = 3 m = 4 m = 5 m = 6 m = 7 k = 0 0.66410.4026 0.0986 0.0421 0.0221 0.0126 0.0070 0.0032 k = 1 0.4027 0.20000.0783 0.0376 0.0206 0.0120 0.0067 0.0031 k = 2 0.0988 0.0785 0.04800.0283 0.0171 0.0104 0.0060 0.0028 k = 3 0.0425 0.0380 0.0285 0.01970.0132 0.0085 0.0051 0.0024 k = 4 0.0229 0.0214 0.0177 0.0135 0.00970.0066 0.0041 0.0020 k = 5 0.0139 0.0132 0.0115 0.0093 0.0071 0.00510.0032 0.0016 k = 6 0.0090 0.0087 0.0078 0.0066 0.0052 0.0038 0.00250.0012 k = 7 0.0061 0.0060 0.0054 0.0047 0.0038 0.0028 0.0019 0.0009The values of DCT coefficients G₀ ⁽¹⁾, G₁ ⁽¹⁾, . . . , and G_(N−1) ⁽¹⁾,for the gradients g₀ ⁽¹⁾, g₁ ⁽¹⁾, . . . , and g_(N−1) ⁽¹⁾ of inputsignals are necessary for actually computing DCT coefficients U of thegradient offset function u shown in Eq. (5), and these values areapproximately computed in the manner as follows.

First, consider four block regions adjacent to the block region Ω beingdiscussed on the left, right, top, and bottom as shown in FIG. 3. Inrespective regions Ω^((s,t)) in FIG. 3, input data is expressed asf ^((s,t)) _(i,j) :=f(x _(i) +s,y _(j) +t),i,j=0, 1, . . . , N−1,andΩ^((0,0))=Ωandf ^((0,0)) _(i,j) =f(x _(i) ,y _(j)).The gradients g₀ ⁽¹⁾, g₁ ⁽¹⁾, . . . , and g_(N−1) ⁽¹⁾ of the inputsignals are approximated by:

$\begin{matrix}\left\lbrack {{Eq}.\mspace{14mu} 9} \right\rbrack & \; \\{{{g_{i}^{(1)} \simeq {X_{i}^{({- 1})} - X_{i}^{(0)}}},{g_{i}^{(2)} \simeq {X_{i}^{(1)} - X_{i}^{(0)}}},{g_{j}^{(3)} \simeq {Y_{j}^{({- 1})} - Y_{j}^{(0)}}},{g_{j}^{(4)} \simeq {Y_{j}^{(1)} - Y_{j}^{(0)}}},{where}}{{X_{i}^{(t)}:={\frac{1}{N}{\sum\limits_{j = 0}^{N - 1}f_{i,j}^{({0,t})}}}},{Y_{j}^{(s)}:={\frac{1}{N}{\sum\limits_{i = 0}^{N - 1}f_{i,j}^{({s,0})}}}},}} & (7)\end{matrix}$are mean values of the input signals in the row and column directions,respectively. Furthermore, by denoting the two-dimensional DCTcoefficients of the input data f^((s,t)) in the respective block regionsΩ^((s,t)) by F^((s,t))=(F^((s,t)) _(k1,k2)),

[Eq.  10]${G_{k}^{(1)} = {{{\lambda_{k}\sqrt{\frac{2}{N}}{\sum\limits_{i = 0}^{N - 1}{g_{i}^{(1)}\cos\;\pi\;{kx}_{i}}}}\mspace{45mu} \simeq {\lambda_{k}\sqrt{\frac{2}{N}}{\sum\limits_{i = 0}^{N - 1}{\left\{ {X_{i}^{({- 1})} - X_{i}^{(0)}} \right\}\cos\;\pi\;{kx}_{i}}}}}\mspace{45mu} = {\frac{1}{\sqrt{N}}\left( {F_{k,0}^{({0,{- 1}})} - F_{k,0}} \right)}}},\mspace{31mu}{k = 0},1,\ldots\mspace{14mu},{N - 1},$is obtained. The following equation is similarly obtained.

[Eq.  11]${G_{k}^{(2)} \simeq {\frac{1}{\sqrt{N}}\left( {F_{k,0}^{({0,1})} - F_{k,0}} \right)}},{G_{k}^{(3)} \simeq {\frac{1}{\sqrt{N}}\left( {F_{0,k}^{({{- 1},0})} - F_{0,k}} \right)}},{G_{k}^{(4)} \simeq {\frac{1}{\sqrt{N}}\left( {F_{0,k}^{({1,0})} - F_{0,k}} \right)}},$Therefore, the DCT coefficients U_(k1,k2) (k1, k2=0, 1, . . . , N−1) ofthe solution u(x, y) to Poisson's equation are given by the followingequation:

$\begin{matrix}\left\lbrack {{Eq}.\mspace{14mu} 12} \right\rbrack & \; \\{U_{k_{1},k_{2}} = {\frac{1}{\sqrt{N}}{\left\{ {{\left( {F_{k_{1},0}^{({0,{- 1}})} - F_{k_{1},0}} \right)\eta_{k_{1},k_{2}}} + {\left( {F_{k_{1},0}^{({0,1})} - F_{k_{1},0}} \right)\eta_{k_{1},k_{2}}^{*}} + {\left( {F_{0,k_{2}}^{({{- 1},0})} - F_{0,k_{2}}} \right)\eta_{k_{2},k_{1}}} + {\left( {F_{0,k_{2}}^{({1,0})} - F_{0,k_{2}}} \right)\eta_{k_{2},k_{1}}^{*}}} \right\}.}}} & (8)\end{matrix}$Eq. (8) is computed by the second offset function DCT coefficientcomputation module 153 of the PHLCT circuit 15 and the second offsetfunction DCT coefficient computation module 233 of the inverse PHLCTcircuit 23. The DC components U_(0,0) may beU _(0,0)=0without losing generality due to the arbitrariness of the constant cincluded in Eq. (4).

The data compression/decompression system according to the firstembodiment improves compression efficiency by using residual V=F−U,which is computed from the DCT coefficients U of the gradient offsetfunction u, instead of input image DCT coefficients (input signal DCTcoefficients) F. This means that what is transferred from the encoder 1after compression is the residual V=F−U and not input image DCTcoefficients (input signal DCT coefficients) F, and image reconstructionfrom the residual V is attempted. Accordingly, the first offset functionDCT coefficient computation module 152 of the PHLCT circuit 15 correctsthe DCT coefficients U of the gradient offset function u in thefollowing manner so as to allow reconstruction of the original inputimage DCT coefficients (input signal DCT coefficients) F from theresidual V=F−U by the decoder 2:

$\begin{matrix}\text{[Ex.~~13]} \\{{\overset{\sim}{U}}_{k_{1},k_{2}}:=\left\{ \begin{matrix}0 & {{{{if}\mspace{14mu} k_{1}} = {k_{2} = 0}};} \\{\frac{1}{\sqrt{N}}\left\{ {{\left( {F_{0,0}^{({{- 1},0})} - F_{0,0}} \right)\eta_{0,k_{1}}} + {\left( {F_{0,0}^{({1,0})} - F_{0,0}} \right)\eta_{0,k_{1}}^{*}}} \right\}} & {{{{{if}\mspace{14mu} k_{1}} \neq 0} = k_{2}};} \\{\frac{1}{\sqrt{N}}\left\{ {{\left( {F_{0,0}^{({0,{- 1}})} - F_{0,0}} \right)\eta_{0,k_{2}}} + {\left( {F_{0,0}^{({0,1})} - F_{0,0}} \right)\eta_{0,k_{2}}^{*}}} \right\}} & {{{{if}\mspace{14mu} k_{1}} = {0 \neq k_{2}}};} \\U_{k_{1},k_{2}} & {{otherwise},}\end{matrix} \right.}\end{matrix}$Clearly, the difference between U and U (tilde) is only on the first rowand the first column, and these values of U (tilde) can be found fromjust the DC components in the subject block and the adjacent blocks.Accordingly, Eq. (9) may be used in computation by the first offsetfunction DCT coefficient computation module 232 of the inverse PHLCTcircuit 23. Note that in this specification, Ù (tilde) means[Eq. 14]ŨSimilarly, if V (tilde) is taken to mean[Eq. 15]{tilde over (V)}the corrected residual V (tilde):=F−U (tilde) is represented by thefollowing equation:

$\begin{matrix}\text{[Eq.~~16]} & \; \\{{\overset{\sim}{V}}_{k_{1},k_{2}}\text{:=}\mspace{11mu}\left\{ \begin{matrix}F_{0,0} & {{{{if}\mspace{14mu} k_{1}} = {k_{2} = 0}};} \\{F_{k_{1},0} - {\frac{1}{\sqrt{N}}\left\{ {{\left( {F_{0,0}^{({{- 1},0})} - F_{0,0}} \right)\eta_{0,k_{1}}} +} \right.}} & \; \\{\left( {F_{0,0}^{({1,0})} - F_{0,0}} \right)\eta_{0,k_{1}}^{*}} & {{{{{if}\mspace{14mu} k_{1}} \neq 0} = k_{2}};} \\{F_{0,k_{2}} - {\frac{1}{\sqrt{N}}\left\{ {{\left( {F_{0,0}^{({0,{- 1}})} - F_{0,0}} \right)\eta_{0,k_{2}}} +} \right.}} & \; \\{\left( {F_{0,0}^{({0,1})} - F_{0,0}} \right)\eta_{0,k_{2}}^{*}} & {{{{if}\mspace{14mu} k_{1}} = {0 \neq k_{2}}};} \\{F_{k_{1},k_{2}} - U_{k_{1},k_{2}}} & \text{otherwise.}\end{matrix} \right.} & (10)\end{matrix}$Computation of the residual V (tilde):=F−U (tilde) is performed by theresidual computation module 154 of the PHLCT circuit 15. The residual V(tilde) computed by the residual computation module 154 is transferredas data for each of the respective block regions to the quantizationcircuit 16, and further transferred to the transmission channel 32 viathe entropy coding circuit 17 and the transmitting circuit 31. Thecompressed data sent over the transmission channel 32 is received viathe receiving circuit 33 of the receiving terminal 6, transferred to theentropy decoding circuit 21 of the decoder 2, and then enters theinverse PHLCT circuit 23 via the dequantization circuit 22. The inversePHLCT circuit 23 then reconstructs the image using the V (tilde). Here,V (tilde)_(0,0)=F_(0,0) should be confirmed. Hereafter, in thisspecification, U and V denote U (tilde) and V (tilde), respectively, tosimplify notation of symbols.

Supposing that the quantization table stored in the transmitting sidequantization table storage unit 18 of the transmitting terminal 5 is Qand that components thereof are Q_(k)(≧1), the DCT coefficients F arequantized in the following manner by the quantization circuit 16 of theencoder 1:[Eq. 17]i _(k):=round(F _(k) /Q _(k)); F _(k) ^(Q) :=Q _(k) ×i _(k) , kεκ  (11)where κ:={k=(k₁,k₂)|k₁,k₂=0, 1, 2, . . . , 7}.

The DCT coefficient sequence {i_(k)} quantized by the quantizationcircuit 16 of the encoder 1 is encoded by the entropy coding circuit 17of the encoder 1, transferred to the transmission channel 32 via thetransmission circuit 31, and then transmitted via the transmissionchannel 32.

A data compression method using the PHLCT circuit 1 according to thefirst embodiment of the present invention is described using theflowchart shown in FIG. 8. Note that the data compression method givenbelow is merely an example, and needless to say, implementation ispossible by other various methods including this modified example.

(a) In step S101, an input image transferred from the input side framememory 13 is divided into data blocks, each made up of 8×8 pixels, asshown in FIG. 4 using the block dividing circuit 14 of the encoder 1.Data of the input image divided into data blocks is transferred to thePHLCT circuit 15 of the encoder 1.(b) In step S111, the input image DCT coefficient computation module(input signal DCT coefficient computation module) 151 of the PHLCTcircuit 15 applies DCT to a subject center data block and each of fourdata blocks adjacent to the subject center data block on the left,right, top, and bottom, as shown in FIGS. 9( a) and 9(c). This computesan input image DCT coefficients (input signal DCT coefficients) F forthe respective data blocks.(c) In step S112, the first offset function DCT coefficient computationmodule 152 uses Eq. (9) to compute components in the first row and thefirst column of DCT coefficients U_(k) of the gradient offset function ufrom V_(0,0) (=F_(0,0)) as shown in FIG. 9( b) (pixels hatched in FIG.6( a) correspond to the components in the first row and the firstcolumn.)(d) In step S113, the second offset function DCT coefficient computationmodule 153 uses Eq. (8) for the input image DCT coefficients (inputsignal DCT coefficients) F shown in FIG. 9( c) to compute componentsk₁−k₂>0 of the DCT coefficients U_(k) of the gradient offset function uas shown in FIG. 9( d) (pixels hatched in FIG. 6( b) correspond to thecomponents k1−k2>0.) The components in the first row and the firstcolumn shown in FIG. 9( b) and the components k₁−k₂>0 shown in FIG. 9(d) can be integrated as shown in FIG. 9( e).(e) In step S114, the residual computation module 154 computes aresidual V=F−U from the DCT coefficients U_(k) of the gradient offsetfunction u in FIG. 9( e), as shown in FIG. 9( f). The residual V=F−Ushown in FIG. 9( f) is supplied to the quantization circuit 16 of theencoder 1.(f) In step S103, the quantization circuit 16 quantizes the residualV=F−U:i _(k)=round(V _(k) /Q _(k))by referencing quantization thresholds Q_(k) stored in the transmittingside quantization table storage unit 18, and then retrieves resultingintegral parts of dividing V_(k) by Q_(k) as {i_(k)} in a scanning ordercalled the zigzag scan. {i_(k)} is input to the entropy coding circuit17 of the encoder 1.(g) In step S104, the entropy coding circuit 17 encodes {i_(k)} byreferencing the Huffman codes stored in the transmitting side Huffmancode table storage unit 19. The compressed data in block units generatedby the entropy coding circuit 17 is transferred to the transmissionchannel 32 via the transmitting circuit 31.

While processing in steps S112 and S113 in the flowchart of FIG. 8 areadded to the conventional JPEG standard, the rest is perfectly the sameprocessing as the JPEG standard.

The series of data compression processing shown in FIG. 8 may beexecuted by controlling the encoder 1 shown in FIG. 1 using anequivalent algorithm program to that shown in FIG. 8. This programshould be stored in a program storage unit (not shown in the drawing) ofa computer system comprising the encoder 1 according to the firstembodiment of the present invention. In addition, this program may bestored in a computer readable recording medium. This recording mediummay then be read out and stored in the program storage unit of theencoder 1 so that the series of data compression processing according tothe present invention can be carried out.

In other words, the data compression program according to the firstembodiment of the present invention makes the encoder 1, which dividesinput data equally into plurality of block regions and compresses theinput data, execute a series of instructions, including:

(a) An instruction to compute DCT coefficients F of an input signal in asubject block region and its adjacent block regions in the plurality ofblock regions, respectively;

(b) An instruction to compute DCT coefficients U of a gradient offsetfunction, which offsets a gradient of the input signal at the blockboundary between the subject block region and its adjacent block regionsusing the DCT coefficients F of the input signal;(c) An instruction to compute a residual V between the DCT coefficientsU of the gradient offset function and the DCT coefficients F of theinput signal; and(d) An instruction to obtain compressed data by quantizing and encodingthe residual V.

Here, ‘computer readable recording medium’ means a medium capable ofrecording programs such as a computer external memory unit,semiconductor memory, a magnetic disk, an optical disk, a magnet-opticaldisk, and a magnetic tape. More specifically, a flexible disk, a CD-ROM,an MO disk, and a magnetic tape are included in the ‘computer readablerecording medium’. For example, the main unit of the encoder 1 may bestructured so as to be connected internally or externally to a flexibledisk apparatus (flexible disk drive) and an optical disk apparatus(optical disk drive). A flexible disk is loaded into the flexible diskdrive, or a CD-ROM into an optical disk drive via a loading slot, andthen a predetermined read-out operation is performed, thereby allowinginstallation of programs stored in these recording media into theprogram storage unit configuring the encoder 1. Alternatively,connection to a predetermined drive device allows use of a ROM as thememory unit utilized in a game pack or the like, or a cassette tape asthe magnetic tape device. Furthermore, this program may be stored in theprogram storage unit via an information processing network such as theInternet.

<Inverse Polyharmonic Local Cosine Transform (IPHLCT) Circuit>

In the decoder 2, the receiving circuit 33 receives data transferred viathe transmission channel 32, and the entropy decoding circuit 21 of thedecoder 2 then decodes it. Afterwards, it is dequantized using thequantization table stored in the receiving side quantization tablestorage unit 29. The inverse PHLCT circuit 23 then subjects a DCTcoefficient residual V_(k) ^(Q), which results from dequantization ofthe residual V, to inverse DCT (IDCT), resulting in a reconstructedimage.

A data decompression method using the inverse PHLCT circuit 23 accordingto the first embodiment of the present invention is described using theflowchart shown in FIG. 11. Note that the data decompression methodgiven below is merely an example, and needless to say, implementation ispossible by other various methods including this modified example.

(a) In step S201, the entropy decoding circuit 21 of the decoder 2converts the compressed data in block units transferred via thereceiving circuit 33 to variable length codes by referencing the Huffmancodes stored in the receiving side Huffman code table storage unit 28.This generates decoded data in block units.(b) In step S202, the dequantization circuit 22 of the decoder 2dequantizes the decoded data in block units generated by the entropydecoding circuit 21 by referencing the quantization thresholds Q_(k)stored in the transmitting side quantization table storage unit 29:V _(k) ^(Q) =Q _(k) ×i _(k)thereby generating the approximate residual V_(k) ^(Q) of the residualV=F−U after quantization-dequantization process. The approximateresidual V_(k) ^(Q) of the residual V after quantization-dequantizationprocess is transferred to the residual input module 231 of the inversePHLCT circuit 23.(c) In step S211, the residual input module 231 of the inverse PHLCTcircuit 23 inputs the DCT coefficient residual V_(k) ^(Q) to a subjectcenter data block and each of four data blocks adjacent to the subjectcenter data block on the left, right, top, and bottom, as shown in FIGS.12( a) and 12(c).(d) In step S212, the first offset function DCT coefficient computationmodule 232 of the inverse PHLCT circuit 23 uses Eq. (9) to computecomponents in the first row and the first column of DCT coefficientsU_(k) ^(Q) of the gradient offset function u from V^(Q) _(0,0) (=F^(Q)_(0,0)) as shown in FIG. 12( b).(e) In step S213, as shown in FIG. 12( c), the second offset functionDCT coefficient computation module 233 of the inverse PHLCT 23 addscomponents in the first row and the first column of V_(k) ^(Q) tocomponents in the first row and the first column of U_(k) ^(Q) computedby the first offset function DCT coefficient computation module 232 instep S212, and uses the resulting values as approximation of componentsin the first row and the first column of the input image DCTcoefficients (input signal DCT coefficients) F^(Q), and then computescomponents k₁−k₂>0 of the DCT coefficients U_(k) ^(Q) of the gradientoffset function as shown in FIG. 12( d) using Eq. (8) for the inputimage DCT coefficients (input signal DCT coefficients) F^(Q).(f) In step S214, as shown in FIG. 12( e), the input image DCTcoefficient approximation/reconstruction module 234 of the inverse PHLCTcircuit 23 adds U^(Q) to the approximate residual V^(Q) afterquantization-dequantization of the residual V,F _(Q) ≈V ^(Q) +U ^(Q)and approximates and reconstructs it.(g) Furthermore, in step S215, the input image DCT coefficientapproximation/reconstruction module 234 applies IDCT to each block forU^(Q)+V^(Q), to reconstruct multivalued image data.(h) In step S204, the block joining circuit 24 of the decoder 2 joinstogether each of the blocks as shown in FIG. 3 using the multivaluedimage data obtained as a result of IDCT. Each frame data joined togetherby the block joining circuit 24 is transferred to the output side framememory 25.

While processing in steps S211 through S214 in the flowchart of FIG. 11are added to the conventional JPEG standard, the rest is perfectly thesame processing as the JPEG standard. Increase in computational cost forthe original JPEG standard consists in cost mainly regarding U or U^(Q),and may be evaluated as approximately 3C₁N²+4C₂N² per N×N pixel datablock. Here, C₁ and C₂ are unit costs necessary for addition,subtraction, and integration thereof.

The series of data decompression processing shown in FIG. 11 may beexecuted by controlling the decoder 2 shown in FIG. 1 using anequivalent algorithm program to that shown in FIG. 11. This programshould be stored in a program storage unit (not shown in the drawing) ofa computer system comprising the decoder 2 according to the presentinvention. In addition, this program may be stored in a computerreadable recording medium, and read out from this recording medium andthen stored in the program storage unit of the decoder 2 so that theseries of data decompression processing of the present invention can becarried out.

In other words, the data decompression program according to the firstembodiment of the present invention makes the decoder 2, which dividesinput data equally into a plurality of block regions, decompresses thecompressed data, which results from compressing the data input to eachblock region, and reconstructs the input data, execute a series ofinstructions including:

(a) An instruction to execute decoding and dequantization of thecompressed data, and obtain a dequantized approximate residual V^(Q) foreach block region;

(b) An instruction to compute DCT coefficients U^(Q) of the gradientoffset function, which offsets the gradient of an input signal in thesubject block region at the block boundaries between the subject blockregion and its adjacent block regions, using the dequantized approximateresidual V^(Q);(c) An instruction to add the DCT coefficients U^(Q) of the gradientoffset function to the dequantized approximate residual V^(Q), andapproximately reconstruct DCT coefficients F^(Q) of the input signal;(d) An instruction to obtain an input signal for each block region fromthe approximately reconstructed DCT coefficients F^(Q) of the inputsignal; and(e) An instruction to join together the input signal for each block andreconstruct the input data.

Here, ‘computer readable recording medium’ means a medium capable ofrecording programs such as a computer external memory unit,semiconductor memory, a magnetic disk, an optical disk, a magnet-opticaldisk, and a magnetic tape, as described with the data compressionprogram according to the first embodiment. For example, the main unit ofthe decoder 2 may be structured so as to be connected internally orexternally to a flexible disk apparatus (flexible disk drive) and anoptical disk apparatus (optical disk drive). A flexible disk is loadedinto the flexible disk drive, or a CD-ROM into an optical disk drive viaa loading slot, and then a predetermined read-out operation isperformed, thereby allowing installation of programs stored in theserecording media into the program storage unit configuring the decoder 2.Furthermore, this program may be stored in the program storage unit viaan information processing network such as the Internet.

Second Embodiment

A data compression/decompression system according to a second embodimentof the present invention, as with the data compression/decompressionsystem according to the first embodiment, includes a transmittingterminal 5P, a transmission channel 32, which transfers compressed datasent from the transmitting terminal 5P, and a receiving terminal 6P,which receives the compressed data sent from the transmitting terminal5P via the transmission channel 32, decompresses this compressed data,and then displays the decompressed image data, as shown in FIG. 13.

With the data compression/decompression system according to the secondembodiment, a ‘partial mode’ data compression/decompression system,which implements a method of estimating data lost through quantizationby the transmitting terminal 5P transmitting compressed data, which isencoded according to the JPEG standard, to the receiving terminal 6P viathe transmission channel 32, and applying inverse polyharmonic localcosine transform to only the receiving terminal 6P, or namely, improvinga reconstructed image just by modifying processing on the decoder side.In this specification, opposed to the partial mode datacompression/decompression system defined in the second embodiment, thedata compression/decompression system according to the first embodimentis in a mode of executing polyharmonic local cosine transform by theencoder 1 of the transmitting terminal 5 and inverse polyharmonic localcosine transform by the decoder 2 of the receiving terminal 6, and isthus defined as a ‘full mode compression/decompression system’.

In other words, the transmitting terminal 5P of the partial mode datacompression/decompression system according to the second embodimentincludes an encoder 1P according to the JPEG standard, an imaging device11, a signal processing circuit 12, an input side frame memory 13, atransmitting circuit 31, a transmitting side quantization table storageunit 18, and a transmitting side Huffman code table storage unit 19. Theencoder 1P according to the JPEG standard differs from the datacompression/decompression system according to the first embodiment inthat it includes a DCT circuit 35 according to the JPEG standard, aquantization circuit 16, and an entropy coding circuit 17.

On the other hand, the transmitting terminal 6P of the partial mode datacompression/decompression system according to the second embodimentincludes a decoder 2P, which applies inverse polyharmonic local cosinetransform, an output side frame memory 25, a display 27, a displaycircuit 26, a receiving circuit 33, a receiving side quantization tablestorage unit 29, and a receiving side Huffman code table storage unit28. The decoder 2P, which applies inverse polyharmonic local cosinetransform, includes an entropy decoding circuit 21, a dequantizationcircuit 22, a partial mode polyharmonic local cosine transform (PPHLCT)circuit 36 a, and a block joining circuit 24.

The imaging device 11, the signal processing circuit 12, and the inputside frame memory 13 of the transmitting terminal 5P, and the displaycircuit 26, the display 27, and the output side frame memory 25 of thereceiving terminal 6P can be the same as in the datacompression/decompression system according to the first embodiment, andthus duplicate descriptions are omitted.

In FIG. 13, each frame image data read out from the input side framememory 13 is transferred to the encoder 1P. In the encoder 1P, the blockdividing circuit 14 divides the image data of a single frame into aplurality of blocks of 8×8 pixels defined by the JPEG method (see FIG.4), and the DCT circuit 35 according to the JPEG standard compressesmultivalued image data of each block. The quantization circuit 16quantizes DCT coefficients of an input image F, which is provided fromthe DCT circuit 35 by referencing quantization thresholds stored in thetransmitting side quantization table storage unit 18. Namely, dividingthe DCT coefficients by the quantization thresholds shown in Table 2 bythe quantization circuit 16 gives quantization coefficients asquotients. The quantization coefficients obtained in this way areretrieved in a scanning order called a zigzag scan, and supplied to theentropy coding circuit 17. The entropy coding circuit 17 converts theDCT coefficients of the input image F quantized by the quantizationcircuit 16 to variable length codes by referencing Huffman codes storedin the transmitting side Huffman code table storage unit 19, generatingcompressed data in block units. The compressed data in block unitsgenerated by the entropy coding circuit 17 is transferred to thetransmission channel 32 via the transmitting circuit 31. The compresseddata sent from the transmitting terminal 5P via the transmission channel32 is received by the receiving circuit 33 of the receiving terminal 6P.The compressed data received via the receiving circuit 33 is transferredto the entropy decoding circuit 21 of the decoder 2P.

Data compression according to the JPEG standard is implemented mainly bydiscarding high frequency components of the input image DCT coefficients(input signal DCT coefficients) F_(k) through a quantization operation.As in the discussion of the data compression/decompression systemaccording to the first embodiment, asymptotic behaviors of the inputimage DCT coefficients (input signal DCT coefficients) F_(k) and theresidual V_(k) during polyharmonic local cosine transform for a highfrequency index k are represented as follows:[Eq. 18]F _(k) =O(∥k∥ ⁻²), V _(k) =O(∥k∥ ⁻⁴) as ∥k∥→∞.In other words, with ∥k∥→∞, the input image DCT coefficients (inputsignal DCT coefficients) F_(k)≈U_(k), allowing estimation of the DCTcoefficients F_(k) in a high frequency band discarded throughquantization using a DCT coefficients U_(k) of a gradient offsetfunction u. In practice, U_(k) ^(Q), which is computed using quantizedF_(k) ^((s,t)Q), is used instead of F_(k) ^((s,t)) in Eqs (8) and (9);however, error between U_(k) ^(Q) and U_(k) is evaluated by thefollowing equation:

$\begin{matrix}\left\lbrack {{Eq}.\mspace{14mu} 19} \right\rbrack \\{{{{U_{k} - U_{k}^{Q}}} \leq {\frac{1}{\sqrt{N}}\left( {{2\; E_{k_{1},0}{\eta_{k_{1},k_{2}}}} + {2\; E_{k_{1},0}{\eta_{k_{1},k_{2}}^{*}}} + {2\; E_{0,k_{2}}{\eta_{k_{2},k_{1}}}} + {2\; E_{0,k_{2}}{\eta_{k_{2},k_{1}}^{*}}}} \right)}} = {\frac{4}{\sqrt{N}}\left( {{E_{k_{1},0}{\eta_{k_{1},k_{2}}}} + {E_{0,k_{2}}{\eta_{k_{2},k_{1}}}}} \right)}}\end{matrix}$where E_(k) is an evaluation of the quantization error included in F_(k)^((s,t)Q) as follows:

$\begin{matrix}\left\lbrack {{Eq}.\mspace{14mu} 20} \right\rbrack \\{\max\limits_{s,{t \in \;{\{{{- 1},0,1}\}}}}{{{F_{k}^{({s,t})} - F_{k}^{{({s,t})}\; Q}}}.}}\end{matrix}$Clearly, the error between U_(k) ^(Q) and U_(k) is solely dependent onthe quantization error included in the components of the first row andthe first column of the DCT coefficients F_(k) ^((s,t)Q). Based on theabove-given discussion, the fundamental method of the partial mode datacompression/decompression system according to the second embodiment isprovided as follows:

$\begin{matrix}\left\lbrack {{Eq}.\mspace{14mu} 21} \right\rbrack & \; \\{{{{Replace}\mspace{14mu} F_{k}^{Q}\mspace{14mu}{by}\mspace{14mu} F_{k}^{Q}} + d_{k}},{d_{k}:=\left\{ {\begin{matrix}U_{k}^{Q} & {{{{if}\mspace{14mu} k} \in {??}_{t}},} \\0 & {{{{if}\mspace{14mu} k} \in {{??}\backslash{??}_{t}}},}\end{matrix}{where}} \right.}} & (12) \\\left\lbrack {{Eq}.\mspace{14mu} 22} \right\rbrack & \; \\{{??}_{t}:={\left\{ {{{k \in {??}}❘F_{k}^{Q}} = {{0\mspace{14mu}{and}\mspace{14mu}{U_{k}^{Q}}} < {Q_{k}/2}}} \right\}.}} & \;\end{matrix}$The entropy decoding circuit 21, which accommodates the decoder 2P ofthe partial mode data compression/decompression system according to thesecond embodiment, converts the compressed data in block unitstransferred via the receiving circuit 33 to variable length codes byreferencing the Huffman codes stored in the receiving side Huffman codetable storage unit 28, thereby generating decoded data in block units.The Huffman codes stored in the receiving side Huffman code tablestorage unit 28 are variable length codes allocated to the decoded dataaccording to pre-computed occurrence rates, where short ones areallocated to codes with a high occurrence rate. The dequantizationcircuit 22 dequantizes the decoded data in block units generated by theentropy decoding circuit 21 by referencing the quantization thresholdsstored in the transmitting side quantization table storage unit 29,thereby generating the DCT coefficients. The quantization thresholdsstored in the receiving side quantization table storage unit 29determine image quality of the recovered image, which results fromdecompressing the compressed data.

As shown in FIG. 14, the PPHLCT circuit 36 a of the decoder 2 includes aDCT coefficient input module 361, a first offset function DCTcoefficient computation module 362, a second offset function DCTcoefficient computation module 363, a quantization error computationmodule 364, and a quantization error correction module 365, and subjectsthe DCT coefficients generated by the dequantization circuit 22 toinverse polyharmonic local cosine transform (details of the PPHLCTcircuit 36 a are given later.) The decoded data in block units havingbeen subjected to inverse polyharmonic local cosine transform by thePPHLCT circuit 36 a is joined together by the block joining circuit 24,providing each frame data.

Each frame data joined together by the block joining circuit 24 istransferred to the output side frame memory 25. The output side framememory 25 writes and stores each frame image data transferred from thedecoder 2P. The display circuit 26 generates an image signal from eachframe image data transferred from the decoder 2P, and then displays thatimage signal as the subject image on the display 27.

A data decompression method using the PPHLCT circuit 36 a according tothe second embodiment of the present invention is described using theflowchart shown in FIG. 15. Note that the data decompression methodgiven below is merely an example, and needless to say, implementation ispossible by other various methods including this modified example.

(a) In step S301, the entropy decoding circuit 21 of the decoder 2Pconverts the compressed data in block units transferred via thereceiving circuit 33 to variable length codes by referencing the Huffmancodes stored in the receiving side Huffman code table storage unit 28.This generates decoded data in block units.(b) In step S302, the dequantization circuit 22 of the decoder 2Pdequantizes the decoded data {i_(k)} in block units generated by theentropy decoding circuit 21 by referencing the quantization thresholdsQ_(k) stored in the transmitting side quantization table storage unit 29indicated in Eq. (11), thereby generating the DCT coefficients F_(k)^(Q) after dequantization of the input image. The DCT coefficients F_(k)^(Q) after dequantization of the input image are transferred to the DCTcoefficient input module 361 of the PPHLCT circuit 36 a.(c) In step S311, the DCT coefficient input module 361 of the PPHLCTcircuit 36 a inputs the DCT coefficients F_(k) ^(Q) after subjecting theinput image in each subject center data block and each of four datablocks adjacent to the subject center data block on the left, right,top, and bottom to dequantization, as shown in FIG. 16( a).(d) In step S312, the first offset function DCT coefficient computationmodule 362 of the PPHLCT circuit 36 a uses Eq. (9) to compute componentsin the first row and the first column of DCT coefficients U_(k) ^(Q) ofthe gradient offset function u from V^(Q) _(0,0) (=F^(Q) _(0,0)).(e) In step S313, the second offset function DCT coefficient computationmodule 363 of the PPHLCT circuit 36 a uses Eq. (8) for the DCTcoefficients F^(Q) after dequantization of the input image shown in FIG.16( a) to compute components k₁−k₂>0 of the DCT coefficients U_(k) ^(Q)of the gradient offset function u. In step S313, the computed componentsk₁−k₂>0 and the components in the first row and the first columncomputed in step S312 are then integrated as shown in FIG. 16( b).(f) In step S314, the quantization error computation module 364 of thePPHLCT circuit 36 a computes a quantization error dk using Eq. (12).(g) Further, in step S315, the quantization error correction module 365of the PPHLCT circuit 36 a replaces the DCT coefficients F_(k) ^(Q)after dequantization of the input image with F_(k) ^(Q)+d_(k) as shownin FIG. 16( c) if the absolute value of d_(k) is less than or equal toQ_(k)/2. If the absolute value of d_(k) is less than Q_(k)/2, then theDCT coefficients F_(k) ^(Q) after dequantization of the input image areused as they are without any processing.(h) In this manner, the PPHLCT circuit 36 a of the decoder 2 subjectsthe DCT coefficients F_(k) ^(Q) after dequantization of the input imagein each block to IDCT so as to estimate multivalued image data, and thenin step S316, outputs the multivalued image data to the block joiningcircuit 24 of the decoder 2.(i) In step S304, the block joining circuit 24 of the decoder 2P joinstogether each of the blocks as shown in FIG. 3 using the multivaluedimage data obtained as a result of IDCT. Each frame data joined togetherby the block joining circuit 24 is transferred to the output side framememory 25.

Computational cost of the partial mode data compression/decompressionsystem according to the second embodiment, in comparison to the fullmode data compression/decompression system described in the firstembodiment, includes a cost for computing the quantization error d_(k).By Eq. (12), the computational cost for the quantization error d_(k) iscost necessary for repeating comparison processing 3N² times per block.

The series of data decompression processing shown in FIG. 15 may beexecuted by controlling the decoder 2P shown in FIG. 13 using anequivalent algorithm program to that shown in FIG. 15. This programshould be stored in a program storage unit (not shown in the drawing) ofa computer system comprising the decoder 2P according to the presentinvention. In addition, this program may be stored in a computerreadable recording medium, and be read out from this recording mediumand then stored in the program storage unit of the decoder 2P so thatthe series of data decompression processing according to the presentinvention can be carried out.

In other words, the data decompression program according to the secondembodiment of the present invention makes the decoder 2P, which dividesinput data equally into plurality of block regions, decompressescompressed data resulting from compressing data of the input data ofeach of the block regions, and estimates the input data, execute aseries of instructions including:

(a) an instruction to execute decoding and dequantization of thecompressed data, and obtain a dequantized DCT coefficients F^(Q) foreach of the respective block regions;

(b) an instruction to compute DCT coefficients U^(Q) of the gradientoffset function, which offsets a gradient of an input signal in thesubject block region, at the block boundaries between the subject blockregion and its adjacent block regions using the dequantized DCTcoefficients F^(Q);(c) an instruction to compute a quantization error d from the DCTcoefficients U^(Q) of the gradient offset function;(d) an instruction to correct the dequantized DCT coefficients F^(Q)using the quantization error d and obtain better approximation of DCTcoefficients of the input signals (make an approximate estimation ofquantization error for the input signals);(d) an instruction to recover an input signal for each of the respectiveblock regions from the above-given better approximation of DCTcoefficients of the input signals (approximately reconstructed DCTcoefficients of the input signal); and(f) an instruction to estimate input data by joining together the inputsignals in respective block regions.

Here, ‘computer readable recording medium’ means a medium capable ofrecording programs such as a computer external memory unit,semiconductor memory, a magnetic disk, an optical disk, a magnet-opticaldisk, and a magnetic tape, as described with the data compressionprogram according to the first embodiment. For example, the main unit ofthe decoder 2P may be structured so as to be connected internally orexternally to a flexible disk apparatus (flexible disk drive) and anoptical disk apparatus (optical disk drive). Furthermore, this programmay be stored in the program storage unit via an information processingnetwork such as the Internet.

Modified Example of Second Embodiment

A data compression/decompression system according to a modified exampleof the second embodiment, as with the data compression/decompressionsystem according to the second embodiment, a ‘partial mode’ datacompression/decompression system, which implements a method ofestimating data lost through quantization by the transmitting terminal5P transmitting compressed data encoded according to the JPEG standardto the receiving terminal 6P via the transmission channel 32, andapplying inverse polyharmonic local cosine transform to only thereceiving terminal 6P, or namely, improving a reconstructed image justby modifying processing on the decoder side.

As with the data compression/decompression system according to themodified example of the second embodiment, the receiving terminal 6P ofthe partial mode data compression/decompression system according to themodified example of the second embodiment includes a decoder 2P, whichapplies inverse polyharmonic local cosine transform, an output sideframe memory 25, a display 27, a display circuit 26, a receiving circuit33, a receiving side quantization table storage unit 29, and a receivingside Huffman code table storage unit 28; however, the decoder 2P, whichapplies inverse polyharmonic local cosine transform, differs from thedata compression/decompression system shown in FIG. 13 in that it has ablocking artifact eliminating function.

‘Blocking artifact’ is an artifact generated at a block boundary of animage reconstructed through compression particularly at a low codingrate (bit rate), and is very prominent to an observer since it alsoappears in parts of the original image that should have been smooth.With the data compression/decompression system according to the modifiedexample of the second embodiment, a method of adding a quadratic surfaceof the following equation to each of data blocks so as to reduceblocking artifact is provided:

$\begin{matrix}\left\lbrack {{Eq}.\mspace{14mu} 23} \right\rbrack & \; \\{{{{p\left( {x,y} \right)}:={{\left( {{\alpha\; y} - 1} \right)\left( {y - 1} \right)\frac{\delta^{(1)}}{2}} - {\left( {{\alpha\left( {1 - y} \right)} - 1} \right)y\frac{\delta^{(2)}}{2}} + {\left( {{\alpha\; x} - 1} \right)\left( {x - 1} \right)\frac{\delta^{(3)}}{2}} - {\left( {{\alpha\left( {1 - x} \right)} - 1} \right)x\frac{\delta^{(4)}}{2}}}},\mspace{79mu}{where}}\mspace{79mu}{\alpha = {\left( {6\; N^{2}} \right)/\left( {{2\; N^{2}} + 1} \right)}}\mspace{79mu}{and}\mspace{79mu}{{\delta^{(1)} = {\frac{\sqrt{2}}{N}{\sum\limits_{k = 0}^{N - 1}{\lambda_{k}\left( {{F_{0,k}^{{({0,{- 1}})}Q}\cos\;\pi\; k} - F_{0,k}^{Q}} \right)}}}},\mspace{79mu}{\delta^{(2)} = {\frac{\sqrt{2}}{N}{\sum\limits_{k = 0}^{N - 1}{\lambda_{k}\left( {F_{0,k}^{{({0,1})}Q} - {F_{0,k}^{Q}\cos\;\pi\; k}} \right)}}}},\mspace{79mu}{\delta^{(3)} = {\frac{\sqrt{2}}{N}{\sum\limits_{k = 0}^{N - 1}{\lambda_{k}\left( {F_{k,0}^{{({{- 1},0})}Q} - {F_{k,0}^{Q}\cos\;\pi\; k}} \right)}}}},\mspace{79mu}{\delta^{(4)} = {\frac{\sqrt{2}}{N}{\sum\limits_{k = 0}^{N - 1}{{\lambda_{k}\left( {F_{k,0}^{{({1,0})}Q} - {F_{k,0}^{Q}\cos\;\pi\; k}} \right)}.}}}}}} & (13)\end{matrix}$When a quadratic surface p(x,y) is added to adjacent data blocks,blocking artifact may be eliminated because values at the boundaries areaveraged. DCT coefficients of the quadratic surface p is

$\begin{matrix}\left\lbrack {{Eq}.\mspace{14mu} 24} \right\rbrack & \; \\{P_{k_{1},k_{2}} = \left\{ {{{\begin{matrix}0 & {{{{if}\mspace{14mu} k_{1}} = {k_{2} = 0}};} \\{\sqrt{N}\left( {{\gamma_{k_{1}}\delta^{(3)}} - {\gamma_{k_{1}}^{*}\delta^{(4)}}} \right)} & {{{{{if}\mspace{14mu} k_{1}} \neq 0} = k_{2}};} \\{\sqrt{N}\left( {{\gamma_{k_{2}}\delta^{(1)}} - {\gamma_{k_{2}}^{*}\delta^{(2)}}} \right)} & {{{{if}\mspace{14mu} k_{1}} = {0 \neq k_{2}}};} \\0 & {{otherwise},}\end{matrix}{where}\gamma_{k}}:={\lambda_{k}\sqrt{\frac{2}{N}}{\sum\limits_{i = 0}^{N - 1}{\left\{ {\left( {{\alpha\; x_{i}} - 1} \right)\left( {x_{i} - 1} \right)} \right\}\cos\;\pi\;{kx}_{i}}}}},{\gamma_{k}^{*}:={\lambda_{k}\sqrt{\frac{2}{N}}{\sum\limits_{i = 0}^{N - 1}{\left\{ {\left( {{\alpha\left( {1 - x_{i}} \right)} - 1} \right)x_{i}} \right\}\cos\;\pi\;{{kx}_{i}.}}}}}} \right.} & (14)\end{matrix}$In other words, the decoder 2P of the data compression/decompressionsystem according to the modified example of the second embodimentincludes an entropy decoding circuit 21, a dequantization circuit 22, aPPHLCT circuit 36 b, and a block joining circuit 24, as with the datacompression/decompression system according to the second embodiment; it,however, differs from the PPHLCT circuit 36 of the datacompression/decompression system according to the second embodimentshown in FIG. 14 in that it includes a DCT coefficient input module 361,a first offset function DCT coefficient computation module 362, a secondoffset function DCT coefficient computation module 363, a quantizationerror computation module 364, a quadratic surface DCT coefficientcomputation module 366, and a quadratic surface quantization errorcorrection module 367.

The imaging device 11, the signal processing circuit 12, and the inputside frame memory 13 of the transmitting terminal 5P, and the displaycircuit 26, the display 27, and the output side frame memory 25 of thereceiving terminal 6P can be the same as those in the datacompression/decompression systems according to the first and the secondembodiment, and thus duplicate descriptions are omitted.

A data decompression method using the inverse PPHLCT circuit 36 baccording to the modified example of the second embodiment of thepresent invention is described using the flowchart shown in FIG. 18.Steps S301 and S302 are the same as those in the flowchart of FIG. 15,and thus duplicate descriptions are omitted. With the modified exampleof the second embodiment, estimation of DCT coefficients F_(k) ^(Q)after dequantization of the input image, which corresponds to step S303in the flowchart shown in FIG. 15, namely processing after step S302until just before step S304 is described.

(a) In step S321, the DCT coefficient input module 361 of the PPHLCTcircuit 36 b according to the modified example of the second embodimentinputs the DCT coefficients F_(k) ^(Q) after dequantization of the inputimage to a subject center data block and each of four data blocksadjacent to the subject center data block on the left, right, top, andbottom, as shown in FIG. 19( a).(b) In step S322, the first offset function DCT coefficient computationmodule 232 of the PPHLCT circuit 36 b uses Eq. (9) to compute componentsin the first row and the first column of DCT coefficients U_(k) ^(Q) ofthe gradient offset function u from V^(Q) _(0,0) (=F^(Q) _(0,0)).(c) In step S323, the second offset function DCT coefficient computationmodule 233 of the PPHLCT circuit 36 b uses Eq. (8) for DCT coefficientsF^(Q) after dequantization of the input image shown in FIG. 19( a) so asto compute components k₁−k₂>0 in the DCT coefficients U_(k) ^(Q) of thegradient offset function u. In step S323, the computed componentsk₁−k₂>0 and the components in the first row and the first columncomputed in step S322 are then integrated as shown in FIG. 19( b).(d) In step S324, the quantization error computation module 364 of thePPHLCT circuit 36 b computes a quantization error d_(k) using Eq. (12).(e) In step S325, the quadratic surface DCT coefficient computationmodule 366 of the PPHLCT circuit 36 b computes the DCT coefficientsP_(k) of the quadratic surface p as shown in FIG. 19( c) using Eq. (14).The quadratic surface DCT coefficient computation module 366 then addsthe DCT coefficients P_(k) of the quadratic surface p to the DCTcoefficients U_(k) ^(Q) of the gradient offset function u, as shown inFIG. 19( d).(f) Further, in step S326, the quadratic surface quantization errorcorrection module 367 of the PPHLCT circuit 36 b replaces the DCTcoefficients F_(k) ^(Q) after dequantization of the input image withF_(k) ^(Q)+d_(k)+P_(k) as shown in FIG. 19( e) if the absolute value ofd_(k)+P_(k) is less than or equal to Q_(k)/2. If the absolute value ofd_(k)+P_(k) is less than Q_(k)/2, U_(k) ^(Q)+P_(k) can be employed as iswithout any processing, as shown in FIG. 19( f).(g) In this manner, the PPHLCT circuit 36 b of the decoder 2 applies ineach block IDCT to the DCT coefficients F_(k) ^(Q) after dequantizationof the input image to estimate multivalued image data, and then in stepS327, outputs the multivalued image data to the block joining circuit 24of the decoder 2.

The additional cost incurred by the data compression/decompressionsystems according to modified example of the second embodiment is costnecessary for computation of DCT coefficients P_(k) of the quadraticsurface p, and is evaluated based on O(N) per block.

The series of data decompression processing shown in FIG. 18 may beexecuted by controlling the decoder 2P shown in FIG. 13 using anequivalent algorithm program to that shown in FIG. 18. This programshould be stored in a program storage unit (not shown in the drawing) ofa computer system comprising the decoder 2P according to the presentinvention. In addition, this program may be stored in a computerreadable recording medium, and be read out from this recording mediumand then stored in the program storage unit of the decoder 2P so thatthe series of data decompression processing according to the presentinvention can be carried out.

In other words, the data decompression program according to the modifiedexample of the second embodiment of the present invention makes thedecoder 2P, which divides input data equally into plurality of blockregions, decompresses compressed data resulting from compressing data ofthe input data of each of the block regions, and estimates the inputdata execute a series of instructions including:

(a) an instruction to execute decoding and dequantization of thecompressed data, and obtain a dequantized DCT coefficients F^(Q) foreach of the respective block regions;

(b) an instruction to compute DCT coefficients U^(Q) of the gradientoffset function, which offsets a gradient of an input signal in thesubject block region, at the block boundaries between the subject blockregion and its adjacent block regions, from the dequantized DCTcoefficients F^(Q);(c) an instruction to compute a quantization error d from the DCTcoefficients U^(Q) of the gradient offset function;(d) an instruction to add a quadratic surface, which reduces blockingartifact, to adjacent block regions, and compute DCT coefficients P^(Q)of the quadratic surface;(e) an instruction to correct the dequantized DCT coefficients F^(Q)using the quantization error d and the DCT coefficients P^(Q) of thequadratic surface, and obtain better approximation of DCT coefficientsof the input signals (make an approximate estimation of quantizationerror for the input signals);(f) an instruction to recover an input signal for each of the respectiveblock regions from the above-given better approximation of DCTcoefficients of the input signals (DCT coefficients of the approximatelyestimated input signals); and(g) an instruction to estimate input data by joining together the inputsignal for each of the respective block regions.

Here, ‘computer readable recording medium’ means a medium capable ofrecording programs such as a computer external memory unit,semiconductor memory, a magnetic disk, an optical disk, a magnet-opticaldisk, and a magnetic tape, as described with the data compressionprogram according to the first embodiment.

The performance of the data compression/decompression system accordingto the first embodiment using full mode polyharmonic local cosinetransform (PHLCT) and the data compression/decompression systemaccording to the modified example of the second embodiment using partialmode polyharmonic local cosine transform (PPHLCT) having a blockingartifact eliminating function are evaluated through both quantitativeand visual comparison to the performance of the datacompression/decompression system based on the JPEG standard according tothe conventional technology. Quantitative evaluation uses the followingtwo types of measures:

(a) Peak Signal to Noise Ratio (PSNR):

‘PSNR’ is an error evaluation measure obtained through normalization ofa squared error based on a peak value of an input signal, and is definedby the following equation:

$\begin{matrix}\left\lbrack {{Eq}.\mspace{14mu} 25} \right\rbrack \\{{20\;{\log_{10}\left( {\max\limits_{{({x,y})} \in \;\Omega}{{{f^{Q}\left( {x,y} \right)}}/{RMSE}}} \right)}},}\end{matrix}$Ω in the above equation denotes a region representing an entire image,f^(Q) denotes reconstructed image data, and RMSE (root mean-squarederror) denotes a root mean-squared error between the original image andthe reconstructed image. The unit is decibel (dB), and the greater thevalue, the better the results.(b) Mean Structural Similarity (MSSIM):

‘MSSIM’ is an error evaluation measure focusing on a geometric structurecharacteristic to image data, namely one image generally beingstructured from a limited number of objects, and adding weight to localsimilarity between an original image and a reconstructed image. Thegreater the MSSIM value, the better the results, wherein the maximumvalue thereof is 1. Compared to PSNR, this gives closer results to thevisual evaluation.

A luminance quantization table shown in Table 2 most normally used inthe JPEG standard is employed as a necessary quantization table duringquantization.

TABLE 2 k₂ = 0 k₂ = 1 k₂ = 2 k₂ = 3 k₂ = 4 k₂ = 5 k₂ = 6 k₂ = 7 k₁ = 016 11 10 16 24 40 51 61 k₁ = 1 12 12 14 19 26 58 60 55 k₁ = 2 14 13 1624 40 57 69 56 k₁ = 3 14 17 22 29 51 87 80 62 k₁ = 4 18 22 37 56 68 109103 77 k₁ = 5 24 35 55 64 81 104 113 92 k₁ = 6 49 64 78 87 103 121 120101 k₁ = 7 72 92 95 98 112 100 103 99

Furthermore, the Huffman coding algorithm is employed as the codingalgorithm. The Lenna image shown in FIG. 20( a) and Barbara image shownin FIG. 20( b) are used as test original images. Lenna and Barbara arethe original images generally used for performance evaluation of theimage processing system.

FIG. 21( a) is a graph where abscissa represents coding rate (bit rate)while ordinate represents values of MSSIM for the original Lenna image,comparing the performance of the conventional technology (DCT) to thoseof the first embodiment (PHLCT) and the modified example of the secondembodiment (PPHLCT). In FIG. 21( a) ‘PHLCT’ represents the performanceof the data compression/decompression system according to the firstembodiment, ‘PPHLCT’ represents the performance of the datacompression/decompression system according to the modified example ofthe second embodiment, and ‘DCT’ represents the performance of the JPEGstandard data compression/decompression system according to theconventional technology. This notation is the same as those in FIGS. 21(b), 22(a), 22(b), 23(a), and 23(b).

FIG. 21( b) is a graph where abscissa represents coding rate andordinate represents the values of PSNR when using the original Lennaimage, comparing the performance of the conventional technology (DCT) tothose of the first embodiment (PHLCT) and the modified example of thesecond embodiment (PPHLCT). FIGS. 21( a) and 21(b) quantitativelyevaluate the precision of the reconstructed image at the same codingrate for the original Lenna image using the first embodiment (PHLCT),the modified example of the second embodiment (PPHLCT) and theconventional technology (DCT).

FIG. 22( a) is a graph where abscissa represents coding rate (bit rate)while ordinate represents the values of MSSIM when using the originalBarbara image, comparing the performance of the conventional technology(DCT) to those of the first embodiment (PHLCT) and the modified exampleof the second embodiment (PPHLCT). FIG. 22( b) is a graph where abscissarepresents coding rate while ordinate represents the values of PSNR whenusing the original Barbara image, comparing the performance theconventional technology (DCT) to those of the first embodiment (PHLCT)and the modified example of the second embodiment (PPHLCT). FIGS. 22( a)and 22(b) quantitatively evaluate the precision of the reconstructedimage at the same coding rate for the original Barbara image using thefirst embodiment (PHLCT), the modified example of the second embodiment(PPHLCT) and the conventional technology (DCT).

The following two points are read from results of FIGS. 21( a), 21(b),22(a), and 22(b):

(a) Improvements in MSSIM and PSNR in the case of applying PHLCT areseen from the JPEG standard data compression/decompression systemaccording to the conventional technology; and

(b) While there is hardly any improvement in the values of PSNR byapplying PPHLCT from the JPEG standard data compression/decompressionsystem according to the conventional technology, improvement in MSSIM isseen at the low coding rate from the JPEG standard datacompression/decompression system according to the conventionaltechnology.

FIG. 23( a) is a graph where abscissa represents the values of PSNRwhile ordinate represents the reduction rate of coding rate (compressionrate) for DCT (JPEG standard) when using the original Lenna image,comparing the performance of the conventional technology (DCT) to thoseof the first embodiment (PHLCT) and the modified example of the secondembodiment (PPHLCT). FIG. 23( b) is a graph where abscissa representsthe values of PSNR while ordinate represents the reduction rate ofcoding rate (compression rate) for DCT (JPEG standard) when using theoriginal Barbara image, comparing the performance of the conventionaltechnology (DCT) to those of the first embodiment (PHLCT) and themodified example of the second embodiment (PPHLCT).

FIGS. 23( a) and 23(b) are diagrams showing the necessary coding rate(compression rate) in order for the reconstructed image to haveequivalent precision in terms of PSNR in the case of using the firstembodiment (PHLCT) and the modified example of the second embodiment(PPHLCT), as compared to the conventional technology (DCT). The higherthe reduction rate, that much more data is saved. Units are displayed bypercentage.

Furthermore, reconstructed images at a coding rate (compression rate) of0.15 bpp are given in FIGS. 24( a) through 24(f) for visual evaluation.FIG. 24( a) shows a reconstructed image at a PSNR of 28.70 dB when DCTbased on the JPEG standard according to the conventional technology isapplied, FIG. 24( b) shows a reconstructed image at a PSNR of 28.89 dBwhen the modified example of the second embodiment (PPHLCT) is applied,and FIG. 24( c) shows a reconstructed image at a PSNR of 29.50 dB whenthe first embodiment (PHLCT) is applied, in the case of the originalLenna image.

FIG. 24( d) shows a reconstructed image at a PSNR of 23.58 dB when theconventional DCT (based on the JPEG standard) is applied, FIG. 24( e)shows a reconstructed image at a PSNR of 23.70 dB when the modifiedexample of the second embodiment (PPHLCT) is applied, and FIG. 24( f)shows a reconstructed image at a PSNR of 24.01 dB when the firstembodiment (PHLCT) is applied, in the case of the original Barbaraimage.

FIGS. 24( a) through 24(f) are obtained by compressing the entire imagesof Lenna shown in FIG. 20( a) and Barbara shown in FIG. 20( b) at 0.15bpp; however, in FIGS. 24( a) through 24(f), for visual comparisonpurposes, only a region of the image surrounding the face which mostgrabs the observer's attention is extracted and displayed instead of theentire image. Reduction in blocking artifact is clear, and effectiveresults for the data compression/decompression systems according to thefirst and the second embodiment with respect to the JPEG standard datacompression/decompression system according to the conventionaltechnology can be confirmed even for visual evaluation.

Furthermore, reconstructed images at a coding rate (compression rate) of0.3 bpp are given in FIGS. 25( a) through 25(f) for the same visualevaluation. FIG. 25( a) shows a reconstructed image at a PSNR of 32.22dB when DCT based on the JPEG standard according to the conventionaltechnology is applied, FIG. 25( b) shows a reconstructed image at a PSNRof 32.36 dB when the modified example of the second embodiment (PPHLCT)is applied, and FIG. 25( c) shows a reconstructed image at a PSNR of32.801 dB when the first embodiment (PHLCT) is applied, in the case ofthe original Lenna image.

On the other hand, FIG. 25( d) shows a reconstructed image at a PSNR of25.66 dB when the conventional DCT (based on the JPEG standard) isapplied, FIG. 25( e) shows a reconstructed image at a PSNR of 25.70 dBwhen the modified example of the second embodiment (PPHLCT) is applied,and FIG. 25( f) shows a reconstructed image at a PSNR of 26.06 dB whenthe first embodiment (PHLCT) is applied, in the case of the originalBarbara image.

FIGS. 25( a) through 25(f) are obtained by compressing the entire imagesof Lenna shown in FIG. 20( a) and Barbara shown in FIG. 20( b) at 0.3bpp; however, in FIGS. 25( a) through 25(f), for visual comparisonpurposes, only a region of the image surrounding the face which mostgrabs the observer's attention is extracted and displayed instead of theentire image. Reduction in blocking artifact is clear, and effectiveresults for the data compression/decompression systems according to thefirst and the second embodiment with respect to the JPEG standard datacompression/decompression system according to the conventionaltechnology can be confirmed even for visual evaluation.

Third Embodiment

A method for improving an image compression effect using a solution toPoisson's equation with the gradient of an original image at a blockboundary used as a boundary condition has been described with the datacompression/decompression systems according to the first and the secondembodiment. With the data compression/decompression system and methodaccording to the first and the second embodiment, computational costswere low, and the algorithms used there were comparatively simple due touse of approximate solutions to Poisson's equation under boundaryconditions determined from only the components in the first row andfirst column of the DCT coefficients.

On the other hand, a data compression/decompression system according toa third embodiment provides a data compression/decompression methodusing derivative matching local cosine transform (DMLCT), which utilizescomponents of a higher order in addition to the components in the firstrow and first column. While computational cost increases and algorithmsbecome complicated in comparison to the cases when only using thecomponents in the first row and the first column, it is confirmed bynumerical experiments that better compression effect can be attained.

In other words, as shown in FIG. 26, the data compression/decompressionsystem according to the third embodiment of the present invention has abasic structure including a transmitting terminal 5 d, a transmissionchannel 32, which transmits compressed data sent from the transmittingterminal 5 d, and a receiving terminal 6 d, which receives thecompressed data sent from the transmitting terminal 5 d via thetransmission channel 32, decompresses this compressed data, and thendisplays the decompressed image data, which is the same as with the datacompression/decompression system according to the first embodiment.

The transmitting terminal 5 d differs from the datacompression/decompression system according to the first embodiment inthat it includes an encoder 1 d, which uses derivative matching localcosine transform (DMLCT), an imaging device 11, a signal processingcircuit 12, an input side frame memory 13, a transmitting circuit 31, atransmitting side quantization table storage unit 18, and a transmittingside Huffman code table storage unit 19. The encoder 1 d using the DMLCTincludes a block dividing circuit 14, a DMLCT circuit 37, a quantizationcircuit 16, and an entropy coding circuit 17.

The receiving terminal 6 d differs from the datacompression/decompression system according to the first embodiment inthat it includes a decoder 2 d, which uses inverse derivative matchinglocal cosine transform (IDMLCT), an output side frame memory 25, adisplay 27, a display circuit 26, a receiving circuit 33, a receivingside quantization table storage unit 29, and a receiving side Huffmancode table storage unit 28. The decoder 2 d using the IDMLCT includes anentropy decoding circuit 21, a dequantization circuit 22, an IDMLCTcircuit 38, and a block joining circuit 24.

The imaging device 11, the signal processing circuit 12, and the inputside frame memory 13 of the transmitting terminal 5 d, and the displaycircuit 26, the display 27, and the output side frame memory 25 of thereceiving terminal 6 d can be the same as those in the datacompression/decompression systems according to the first and the secondembodiment, and thus duplicate descriptions are omitted.

In FIG. 26, each frame image data read out from the input side framememory 13 is transferred to the encoder 1 d. In the encoder 1 d, theblock dividing circuit 14 divides the image data of a single frame to aplurality of blocks of 8×8 pixels defined by the JPEG method (see FIG.4), and the DMLCT circuit 37 compresses multivalued image data of eachof the blocks. In other words, the DMLCT circuit 37 includes aone-dimensional DMLCT computation module 371, and a tensor productcomputation module 372. The one-dimensional DMLCT computation module 371includes an input image DCT coefficient computation module (input signalDCT coefficient computation module) 711, an upper bound setting module712, a first residual computation module 713, and a second residualcomputation module 714. The DMLCT circuit 37 captures image data of asingle frame block by block as shown in FIG. 3 from the block dividingcircuit 14, and executes derivative matching local cosine transform(DMLCT) on that image data (details of the DMLCT circuit 37 are givenlater.)

The quantization circuit 16 quantizes DCT coefficients of a residualV=F−U, which is provided from the DMLCT circuit 37, by referencingquantization thresholds stored in the transmitting side quantizationtable storage unit 18. The quantization coefficients obtained by thequantization circuit 16 are retrieved in a scanning order called thezigzag scan, and input to the entropy coding circuit 17. The entropycoding circuit 17 converts the DCT coefficients quantized by thequantization circuit 16 to variable length codes by referencing theHuffman codes stored in the transmitting side Huffman code table storageunit 19, generating compressed data in block units. The compressed datain block units generated by the entropy coding circuit 17 is transferredto the transmission channel 32 via the transmitting circuit 31.

The compressed data sent from the transmitting terminal 5 d via thetransmission channel 32 is received by the receiving circuit 33 of thereceiving terminal 6 d. The compressed data input via the receivingcircuit 33 is transferred to the entropy decoding circuit 21 of thedecoder 2 d using the IDMLCT. The entropy decoding circuit 21 convertsthe compressed data in block units transferred via the receiving circuit33 to variable length codes by referencing the Huffman codes stored inthe receiving side Huffman code table storage unit 28, therebygenerating decoded data in block units. The dequantization circuit 22dequantizes the decoded data in block units generated by the entropydecoding circuit 21 by referencing the quantization thresholds stored inthe transmitting side quantization table storage unit 29, therebygenerating the DCT coefficients.

The IDMLCT circuit 38 includes a tensor expansion module 381, and aone-dimensional IDMLCT computation module 382. The one-dimensionalIDMLCT computation module 382 includes a one-dimensional block residualinput module 821, a first interpolating polynomial DCT coefficientcomputation module 822, a second interpolating polynomial DCTcoefficient computation module 823, and an input image DCT coefficientcomputation approximation/reconstruction module 824. The IDMLCT circuit38 subjects DCT coefficients generated by the dequantization circuit 22to inverse derivative matching local cosine transform (IDMLCT) (detailsof the IDMLCT circuit 38 are given later.) The decoded data in blockunits having been subjected to inverse derivative matching local cosinetransform by the IDMLCT circuit 38 is joined together by the blockjoining circuit 24, providing frame data.

Each frame data joined together by the block joining circuit 24 istransferred to the output side frame memory 25. The output side framememory 25 writes and stores each frame image data transferred from thedecoder 2 d. The display circuit 26 generates an image signal from eachframe image data transferred from the decoder 2 d, and then displaysthat image signal as the subject image on the display 27.

Before describing the DMLCT circuit 37 and the IDMLCT circuit 38, a datacompression/decompression method for a one-dimensional signal processedby the one-dimensional DMLCT computation module 371 of the DMLCT circuit37 and the one-dimensional IDMLCT computation module 382 of the IDMLCTcircuit 38 is described first. Concerning two-dimensional signals,namely image compression, a tensor product is computed according to animage compression method for one-dimensional signals and processed bythe tensor product computation module 372 of the DMLCT circuit 37.Furthermore, concerning image decompression of two-dimensional signals,the tensor product is expanded using the image compression method forone-dimensional signals by the tensor expansion module 381 of the IDMLCTcircuit 38.

First, for description of making a mathematical formula used forprocessing by the one-dimensional DMLCT computation module 371 and theone-dimensional IDMLCT computation module 382, a sufficiently smoothinput signal function f(x) defined on the interval [0,1] is considerednow. The one-dimensional DCT coefficients in the input signal functionf(x) on the interval [0,1] are given by the following equation:

$\begin{matrix}\left\lbrack {{Eq}.\mspace{14mu} 26} \right\rbrack & \; \\{{F_{k} = {\sqrt{\frac{2}{N}}{\sum\limits_{l = 0}^{N - 1}{{f\left( \frac{{2l} + 1}{2N} \right)}{\cos\left( {\pi\; k\frac{{2l} + 1}{2N}} \right)}}}}},{k = {0,1}},\ldots\mspace{14mu},{N - 1.}} & (15)\end{matrix}$Assuming that the term in the series on the right hand side is anumerical integral of f(x) cos (πkx) for N sampling points on theinterval [0,1],[Eq. 27]F _(k)=√{square root over (2N)}∫₀ ¹ f(x)cos πkxdx+O(N ⁻³), k=0, 1, . . .,N−1.Furthermore, when k is greater than 0, the following equation is derivedthrough application of a partial integral on the right side:

$\begin{matrix}\left\lbrack {{Eq}.\mspace{14mu} 28} \right\rbrack \\{\begin{matrix}{F_{k} = {{\sqrt{2N}{\int_{0}^{*}{{f(x)}\cos\;\pi\;{kx}{\mathbb{d}x}}}} + {O\left( N^{- 3} \right)}}} \\{= {{{- \frac{\sqrt{2N}}{\pi\; k}}\left\{ {{\int_{0}^{1}{\frac{\mathbb{d}f}{\mathbb{d}x}(x)\sin\;\pi\;{kx}{\mathbb{d}x}}} - \left\lbrack {{f(x)}\sin\;\pi\;{kx}} \right\rbrack_{0}^{1}} \right\}} +}} \\{O\left( N^{- 3} \right)} \\{{= {{{- \frac{\sqrt{2N}}{\pi\; k}}{\int_{0}^{1}{\frac{\mathbb{d}f}{\mathbb{d}x}(x)\sin\;\pi\;{kx}{\mathbb{d}x}}}} + {O\left( N^{- 3} \right)}}},}\end{matrix}{{k = 1},\ldots\mspace{14mu},{N - 1.}}}\end{matrix}$

With the data compression/decompression systems according to the firstand the second embodiment, considering only the endpoints of a gradientoffset function u(x) for the input signal function f(x), improvement inthe compression effect is attempted using the fact that convergence rateof DCT coefficients of a residual v(x)=f(x)−u(x)

$\begin{matrix}\left\lbrack {{Eq}.\mspace{14mu} 29} \right\rbrack & \; \\{{V_{k} = {{{- \frac{\sqrt{2N}}{\pi\; k}}{\int_{0}^{1}{\frac{\mathbb{d}v}{\mathbb{d}x}(x)\sin\;\pi\;{kx}{\mathbb{d}x}}}} + {O\left( N^{- 3} \right)}}},{k = 1},\ldots\mspace{11mu},{N - 1}} & (16)\end{matrix}$is O(k⁻⁴). The data compression/decompression methods according to thefirst and the second embodiment are very effective as methods foravoiding the Gibbs phenomenon near the endpoints; however, on the otherhand, evaluation formula 16 for the residual DCT coefficients V_(k)indicates that the value of the residual DCT coefficients V_(k) greatlydepends on the behavior of dv/dx(x) within the interval, not only at theendpoints.

With the data compression/decompression system according to the thirdembodiment, even at n number of nodes including both equidistantendpoints on the interval [0,1],

$\begin{matrix}\left\lbrack {{Eq}.\mspace{14mu} 30} \right\rbrack \\{{x_{n,i}:=\frac{i}{n - 1}},{i = 0},\ldots\mspace{14mu},{n - 1},}\end{matrix}$an interpolating polynomial u(x) of degree n offsetting a gradient ofthe input signal function f(x) or satisfying the conditions

$\begin{matrix}\left\lbrack {{Eq}.\mspace{14mu} 31} \right\rbrack & \; \\{{{{\frac{\mathbb{d}u}{\mathbb{d}x}\left( x_{n,i} \right)} = {\frac{\mathbb{d}f}{\mathbb{d}x}\left( x_{n,i} \right)}},{i = 0},\ldots\mspace{14mu},{n - 1.}}{{of}\mspace{14mu}{the}\mspace{14mu}{form}}} & (17) \\\left\lbrack {{Eq}.\mspace{14mu} 32} \right\rbrack & \; \\{{{u(x)} = {{\sum\limits_{i = 0}^{n - 1}{\frac{\mathbb{d}f}{\mathbb{d}x}\left( x_{n,i} \right){L_{n,i}(x)}}} + c}},} & (18)\end{matrix}$is used. c, the second term on the right hand side of Eq. (18) is anarbitrary constant, and Li(x) in the first term on the right hand sideis a primitive function of an i-th Lagrange polynomial.

$\begin{matrix}\left\lbrack {{Eq}.\mspace{14mu} 33} \right\rbrack \\{{L_{n,i}(x)}:={\int{\frac{\prod\limits_{j = {0{({j \neq i})}}}^{n - 1}\left( {x - x_{n,j}} \right)}{\prod\limits_{j = {0{({j \neq i})}}}^{n - 1}\left( {x_{n,i} - x_{n,j}} \right)}{\mathbb{d}x}}}}\end{matrix}$

The compression effect of the data compression/decompression systemaccording to the third embodiment depends on approximation accuracy ofan interpolating polynomial u(x). While a strict measure of precision isdifficult, existence of ξ(x) belonging to (0, 1) satisfying

$\begin{matrix}\left\lbrack {{Eq}.\mspace{14mu} 34} \right\rbrack \\\begin{matrix}{V_{k} = {{{- \frac{\sqrt{2N}}{\pi\; k}}{\int_{0}^{1}{\frac{\mathbb{d}\left( {f - u} \right)}{\mathbb{d}x}(x)\sin\;\pi\;{kx}{\mathbb{d}x}}}} + {O\left( N^{- 3} \right)}}} \\{= {{{- \frac{\sqrt{2N}}{\pi\; k}} \cdot \frac{1}{n!}}{\int_{0}^{1}{\prod\limits_{i = 0}^{n - 1}{\left( {x - x_{n,i}} \right)\frac{\mathbb{d}^{n + 1}f}{\mathbb{d}x^{n + 1}}\left( {\xi(x)} \right)}}}}} \\{{\sin\;\pi\;{kx}\;{\mathbb{d}x}} + {{O\left( N^{- 3} \right)}.}}\end{matrix}\end{matrix}$is easily derived.

As in the discussions of the data compression/decompression systemsaccording to the first and the second embodiment, DCT coefficientsU_(k)(k>0) of the interpolating polynomial u(x) are necessary foractually configuring the residual DCT coefficients V_(k). The DCTcoefficients U_(k) of the interpolating polynomial u(x) are provided bythe following equation using the definitional Eq. (18) of the functionu(x):

$\begin{matrix}\left\lbrack {{Eq}.\mspace{14mu} 35} \right\rbrack & \; \\{\begin{matrix}{U_{k} = {\sqrt{\frac{2}{N}}{\sum\limits_{l = 0}^{N - 1}{\left\{ {\sum\limits_{i = 0}^{n - 1}{\frac{\mathbb{d}f}{\mathbb{d}x}\left( x_{n,i} \right){L_{n,i}\left( \frac{{2l} + 1}{2N} \right)}}} \right\}{\cos\left( {\pi\; k\frac{{2l} + 1}{2N}} \right)}}}}} \\{= {\sum\limits_{i = 0}^{n - 1}{\frac{\mathbb{d}f}{\mathbb{d}x}\left( x_{n,i} \right)\left\{ {\sqrt{\frac{2}{N}}{\sum\limits_{l = 0}^{N - 1}{{L_{n,i}\left( \frac{{2l} + 1}{2N} \right)}{\cos\left( {\pi\; k\frac{{2l} + 1}{2N}} \right)}}}} \right\}}}} \\{{= {\sum\limits_{i = 0}^{n - 1}{w_{k,n,i}\frac{\mathbb{d}f}{\mathbb{d}x}\left( x_{n,i} \right)}}},{k = 1},\ldots\mspace{14mu},{N - 1},}\end{matrix}{where}} & (19) \\{w_{k,n,i}:={\sqrt{\frac{2}{N}}{\sum\limits_{l = 0}^{N - 1}{{L_{n,i}\left( \frac{{2l} + 1}{2N} \right)}{{\cos\left( {\pi\; k\frac{{2l} + 1}{2N}} \right)}.}}}}} & (20)\end{matrix}$The values of coefficients w_(k,n,i) shown in Eq. (20) can be computedindependently from the input signal function f(x). For computation ofderivative df/dx(x_(n,i)) at a node x_(n,i), finite difference of theinput signal function f(x) is applied, as described below. First, thedomain of the input signal function f(x) is extended from [0,1] to[−1,2]. In other words, the input signal function f(x) is defined notonly in the interval [0,1] but also in the surrounding area.Accordingly, x_(n,i) is redefined by the following equation:

$\begin{matrix}\left\lbrack {{Eq}.\mspace{14mu} 36} \right\rbrack \\{{x_{n,i}:=\frac{i}{n - 1}},{i = {{- 1},0}},\ldots\mspace{14mu},{n - 1},{n.}}\end{matrix}$Finite difference approximation is applied in computation of thederivative at the node.

$\begin{matrix}\left\lbrack {{Eq}.\mspace{14mu} 37} \right\rbrack & \; \\\begin{matrix}{{\frac{\mathbb{d}f}{\mathbb{d}x}\left( x_{n,i} \right)} \simeq {\left( {n - 1} \right)\left\{ {{f\left( \frac{x_{n,i} + x_{n,{i + 1}}}{2} \right)} - {f\left( \frac{x_{n,{i - 1}} + x_{n,i}}{2} \right)}} \right\}}} \\{{= {\left( {n - 1} \right)\left\{ {{f\left( \frac{{2i} + 1}{2\left( {n - 1} \right)} \right)} - {f\left( \frac{{2i} - 1}{2\left( {n - 1} \right)} \right)}} \right\}}},} \\{{i = 0},\ldots\mspace{14mu},{n - 1.}}\end{matrix} & (21)\end{matrix}$If the DCT coefficients F_(k) are used here,

$\begin{matrix}\left\lbrack {{Eq}.\mspace{14mu} 38} \right\rbrack & \; \\\begin{matrix}{{f\left( \frac{{2i} \pm 1}{2\left( {n - 1} \right)} \right)} = {\sqrt{\frac{2}{N}}{\sum\limits_{k = 0}^{N - 1}{\lambda_{k}F_{k}{\cos\left( {\pi\; k\frac{{2i} \pm 1}{2\left( {n - 1} \right)}} \right)}}}}} \\{= {{\sqrt{\frac{2}{N}}{\sum\limits_{k = 0}^{n - 2}{\lambda_{k}F_{k}{\cos\left( {\pi\; k\frac{{2i} \pm 1}{2\left( {n - 1} \right)}} \right)}}}} +}} \\{\sqrt{\frac{2}{N}}{\sum\limits_{k = n}^{N - 1}{\lambda_{k}F_{k}{{\cos\left( {\pi\; k\frac{{2i} \pm 1}{2\left( {n - 1} \right)}} \right)}.}}}}\end{matrix} & (22)\end{matrix}$To derive the last equality, if k=n−1, then we clearly have

$\begin{matrix}\left\lbrack {{Eq}.\mspace{14mu} 39} \right\rbrack \\{{{\cos\left( {\pi\; k\frac{{2i} \pm 1}{2\left( {n - 1} \right)}} \right)} = {{\cos\left( {x\frac{{2i} \pm 1}{2}} \right)} = 0}},{\forall{i \in {{\mathbb{Z}}.}}}}\end{matrix}$With the data compression/decompression system according to the thirdembodiment, only DCT coefficients of low orders are focused on, and Eq.(22) is approximated in the following manner:

$\begin{matrix}\left\lbrack {{Eq}.\mspace{14mu} 40} \right\rbrack & \; \\{{f\left( \frac{{2i} \pm 1}{2\left( {n - 1} \right)} \right)} \simeq {\sqrt{\frac{2}{N}}{\sum\limits_{k = 0}^{n - 2}{\lambda_{k}F_{k}{{\cos\left( {\pi\; k\frac{{2i} \pm 1}{2\left( {n - 1} \right)}} \right)}.}}}}} & (23)\end{matrix}$In other words,

$\begin{matrix}\left\lbrack {{Eq}.\mspace{14mu} 41} \right\rbrack & \; \\{{\frac{\mathbb{d}f}{\mathbb{d}x}\left( x_{n,i} \right)} \simeq {\quad{\quad\left\{ \begin{matrix}{\left( {n - 1} \right)\sqrt{\frac{2}{N}}{\sum\limits_{k = 0}^{n - 2}{\lambda_{k}\left( {{F_{k}{\cos\left( {\pi\; k\;\frac{1}{2\left( {n - 1} \right)}} \right)}} - {F_{k}^{({- 1})}{\cos\left( {\pi\; k\frac{- 1}{2\left( {n - 1} \right)}} \right)}}} \right)}}} & {{{{if}\mspace{14mu} i} = 0},} \\{\left( {n - 1} \right)\sqrt{\frac{2}{N}}{\sum\limits_{k = 0}^{n - 2}{\lambda_{k}{F_{k}\left( {{\cos\left( {\pi\; k\frac{{2i} + 1}{2\left( {n - 1} \right)}} \right)} - {\cos\left( {\pi\; k\frac{{2i} - 1}{2\left( {n - 1} \right)}} \right)}} \right)}}}} & {{{{if}\mspace{14mu} i} = 1},\ldots\mspace{14mu},{n - 2},} \\{\left( {n - 1} \right)\sqrt{\frac{2}{N}}{\underset{k = 0}{\overset{n - 2}{\sum\lambda_{k}}}\left( {{F_{k}^{(1)}{\cos\left( {\pi\; k\frac{{2\left( {n - 1} \right)} + 1}{2\left( {n - 1} \right)}} \right)}} - {F_{k}{\cos\left( {\pi\; k\frac{{2\left( {n - 1} \right)} - 1}{2\left( {n - 1} \right)}} \right)}}} \right)}} & {{{{if}\mspace{14mu} i} = {n - 1}},}\end{matrix} \right.}}} & (24)\end{matrix}$determined from F₀, . . . , F_(n−2) as approximate values in Eq. (21) isused; where, F_(k) (−1) and F_(k) (1) are the DCT coefficients of theinput signal function f(x) on the intervals [−1,0] and [1,2],respectively. Furthermore, by substituting Eq. (24) for Eq. (19), thefollowing approximate expression of the DCT coefficients U_(k) in theinterpolating polynomial u(x) is obtained in the following manner:

$\begin{matrix}\text{[Eq.~~42]} & \; \\\begin{matrix}{{U_{k} \simeq U_{k}^{(n)}}:={\left( {n - 1} \right)\sqrt{\frac{2}{N}}\left\{ {w_{k,n,0}{\underset{j = 0}{\sum\limits^{n - 2}}{\lambda_{j}\left( {{F_{j}{\cos\left( {{\pi\; j\frac{1}{2\left( {n - 1} \right)}} - {F_{j}^{({- 1})}{\cos\left( {\pi\; j\frac{- 1}{2\left( {n - 1} \right)}} \right)}}} \right)}} +} \right.}}} \right.}} \\{{\underset{i = 0}{\sum\limits^{n - 2}}{w_{k,n,i}{\underset{j = 0}{\sum\limits^{n - 2}}{\lambda_{i}{F_{j}\left( {{\cos\left( {\pi\; j\frac{{2\; i} + 1}{2\left( {n - 1} \right)}} \right)} - {\cos\left( {\pi\; j\frac{{2i} - 1}{2\left( {n - 1} \right)}} \right)}} \right)}}}}} + {w_{k,n,{n - 1}}{\underset{j = 0}{\sum\limits^{n - 2}}{\lambda\;{j\left( {{F_{j}^{(1)}{\cos\left( {\lambda\; j\frac{{2\left( {n - 1} \right)} + 1}{2\left( {n - 1} \right)}} \right)}} -} \right.}}}}} \\{\left. \left. {F_{j}{\cos\left( {\pi\; j\frac{{2\left( {n - 1} \right)} - 1}{2\left( {n - 1} \right)}} \right)}} \right) \right\}\quad}\end{matrix} & (25) \\\begin{matrix}{\mspace{121mu}{= {\left( {n - 1} \right)\sqrt{\frac{2}{N}}{\underset{j = 0}{\sum\limits^{n - 2}}{\lambda_{j}\left\{ {{w_{k,n,0}{\cos\left( \frac{\pi\; j}{2\left( {n - 1} \right)} \right)}\left( {F_{j} - F_{j}^{({- 1})}} \right)} - {2{\sin\left( \frac{\pi\; j}{2\left( {n - 1} \right)} \right)}{\underset{i = 1}{\sum\limits^{n - 2}}{w_{k,n,i}{\sin\left( \frac{\pi\;{ij}}{\left( {n - 1} \right)} \right)}F_{j}}}} +} \right.}}}}} \\\left. {{w_{k,n,{n - 1}}\left( {- 1} \right)}^{j}{\cos\left( \frac{\pi\; j}{2\left( {n - 1} \right)} \right)}\left( {F_{j}^{(1)} - F_{j}} \right)} \right\}\end{matrix} & \; \\{\mspace{121mu}{{= {\underset{j = 0}{\sum\limits^{n - 2}}\left\{ {{W_{k,n,j}^{(a)}\left( {F_{j} - F_{j}^{({- 1})}} \right)} + {W_{k,n,j}^{(b)}F_{j}} + {W_{k,n,j}^{(c)}\left( {F_{j}^{(1)} - F_{j}} \right)}} \right\}}},}} & \; \\\text{where} & \; \\{{W_{k,n,j}^{(a)} = {\left( {n - 1} \right)\sqrt{\frac{2}{N}}\lambda_{j}w_{k,n,0}{\cos\left( \frac{\pi\; j}{2\left( {n - 1} \right)} \right)}}},} & \; \\{{W_{k,n,j}^{(b)} = {{- 2}\left( {n - 1} \right)\sqrt{\frac{2}{N}}\lambda_{j}{\sin\left( \frac{\pi\; j}{2\left( {n - 1} \right)} \right)}{\underset{i = 1}{\sum\limits^{n - 2}}{w_{k,n,i}{\sin\left( \frac{\pi\;{ij}}{\left( {n - 1} \right)} \right)}}}}},} & \; \\{W_{k,n,j}^{(c)} = {\left( {n - 1} \right)\sqrt{\frac{2}{N}}\lambda_{j}{w_{k,n,{n - 1}}\left( {- 1} \right)}^{j}{{\cos\left( \frac{\pi\; j}{2\left( {n - 1} \right)} \right)}.}}} & \;\end{matrix}$Clearly, coefficients W^((a)) _(k,n,j) and W^((b)) _(k,n,j) and W^((c))_(k,n,j) can be computed independently of the input signal functionf(x).

A data compression method using the DMLCT circuit 37 according to thethird embodiment of the present invention is described using theflowchart shown in FIG. 28. Note that the data compression method givenbelow is merely an example, and needless to say, implementation ispossible by other various methods including this modified example.

(a) In step S501, the one-dimensional DMLCT computation module 371 ofthe DMLCT circuit 37 inputs a signal to a one-dimensional subject centerdata block and each of two one-dimensional data blocks adjacent to theone-dimensional subject center data block above and below, as shown inFIG. 29( a). DCT is applied to each of the one-dimensional data blocks,and an input image DCT coefficients (input signal DCT coefficients) F iscomputed for the one-dimensional subject center data block and each ofthe two one-dimensional data blocks adjacent to the one-dimensionalsubject center data block above and below, as shown in FIG. 29( b).(b) In step S502, the upper bound setting module 712 sets an upper boundn (bar) to the number of nodes n. An upper bound n (bar) is set because,experimentally, an effective n should not be very large, and thecomputational cost becomes excessive as n increases. Note that in thisspecification, n (bar) denotes[Eq. 43]n

(c) The first residual computation module 713 of the DMLCT circuit 37finds DCT coefficients U_(k) in the interpolating polynomial u(x), asshown in FIG. 29( c), using Eq. (25). In step S503, for[Eq. 44]k=1, . . . , n−1a residual, as shown in FIG. 29( c), is computed using:[Eq. 45]V _(k) =F _(k) −U _(k) ^((k+1))(d) Then, in step S504, for[Eq. 46]k= n, . . . , N−1the second residual computation module 714 of the DMLCT circuit 37computes the residual:[Eq. 47]V _(k) =F _(k) −U _(k) ^(( n))(e) In step S506, the tensor product computation module 372 of the DMLCTcircuit 37 computes two-dimensional DCT using the tensor product, asshown in FIG. 29( e). The computation of the two-dimensional DCT in stepS506 can be implemented by further applying one-dimensional DCThorizontally to one-dimensional DCT coefficients resulting from applyingone-dimensional DCT to an input two-dimensional signal vertically, asshown in FIG. 29( b). On the other hand, when one-dimensional DCT isapplied horizontally, the computation can be implemented by furtherapplying one-dimensional DCT vertically to resulting one-dimensional DCTcoefficients. The residual V=F−U shown in FIG. 29( e) is output to thequantization circuit 16 of the encoder 1 d.(f) Quantization processing and coding by the quantization circuit 16and the entropy coding circuit 17, respectively, are the same as withthe data compression method according to the first embodiment, and thusduplicate descriptions are omitted. The compressed data in block unitsgenerated by the entropy coding circuit 17 is transferred to thetransmission channel 32 via the transmitting circuit 31.

The series of data compression processing shown in FIG. 28 can beexecuted by controlling the encoder 1 d shown in FIG. 1 using anequivalent algorithm program to that shown in FIG. 28. This programshould be stored in a program storage unit (not shown in the drawing) ofa computer system comprising the encoder 1 d according to the presentinvention. In addition, this program can be stored in a computerreadable recording medium, and be read out from this recording mediumand stored in the program storage unit of the encoder 1 d so that theseries of data compression processing of the present invention can becarried out. Here, ‘computer readable recording medium’ means a mediumcapable of recording programs such as a computer external memory unit,semiconductor memory, a magnetic disk, an optical disk, a magnet-opticaldisk, and a magnetic tape. For example, the main unit of the encoder 1 dmay be structured so as to be connected internally or externally to aflexible disk apparatus (flexible disk drive) and an optical diskapparatus (optical disk drive). A flexible disk is loaded into theflexible disk drive, or a CD-ROM into an optical disk drive via aloading slot, and then a predetermined read-out operation is performed,thereby allowing installation of programs stored in these recordingmedia into the program storage unit comprising the encoder 1 d.Furthermore, this program may be stored in the program storage unit viaan information processing network such as the Internet.

A data decompression method using the IDMLCT circuit 38 according to thethird embodiment of the present invention is described using theflowchart shown in FIG. 30. Note that the data decompression methodgiven below is merely an example, and needless to say, implementation ispossible by other various methods including this modified example.

(a) Quantization Processing and coding in the entropy decoding circuit21 and the dequantization circuit 22 of the decoder 2 d, respectively,are the same as with the data compression method according to the firstembodiment, and thus duplicate descriptions are omitted. The approximateversion V_(k) ^(Q) of a residual V is transferred to the tensorexpansion module 381 of the IDMLCT circuit 38.(b) In step S601, the tensor expansion module 381 of the IDMLCT circuit38 expands one-dimensional residuals V_(k) ^(Q) from a residual V_(k)^(Q) of the two-dimensional tensor product in FIG. 31( a).The residuals V_(k) expanded one-dimensionally are put at locations ofrespective pixels in a one-dimensional subject center data block andeach of two one-dimensional data blocks adjacent to the one-dimensionalsubject center data block above and below, as shown in FIG. 31( b).(c) The first interpolating polynomial DCT coefficient computationmodule 822 of the IDMLCT circuit 38 finds DCT coefficients U_(k) ^((−)Q)in the interpolating polynomial u(x), as shown in FIG. 31( c), using Eq.(25). U_(k) ^((n)Q) results from replacing F_(k) by F_(k) ^(Q) in Eq.(25). Then, in step S602, for[Eq. 48]k=1, . . . , n−1[Eq. 49]F _(k) ^(Q) =U _(k) ^((k−1)Q) ÷V _(k) ^(Q)|is computed sequentially as shown in FIG. 31( d). Therefore, successivereconstruction[Eq. 50]F ₂ ^(Q) =U ₂ ^((3)Q) +V ₂ ^(Q),F ₁ ^(Q) =U ₁ ^((2)Q) +V ₁ ^(Q),. . . ,F _(n−1) ^(Q) =U _(n−1) ^(( n)Q) +V _(n−1) ^(Q)is possible.(d) Then, in step S603, for[Eq. 51]k= n, . . . , N−1second interpolating polynomial DCT coefficient computation module 823of the IDMLCT circuit 38 computes:[Eq. 52]F _(k) ^(Q) =U _(k) ^(( n)Q) +V _(k) ^(Q)|(e) Furthermore, in step S604, the input image DCT coefficientapproximation/reconstruction module 824 applies IDCT to each block forF_(k) ^(Q) to reconstruct multivalued image data.(f) The block joining circuit 24 of the decoder 2 d joins together eachof the blocks using the multivalued image data obtained as a result ofIDCT. Each frame data joined together by the block joining circuit 24 istransferred to the output side frame memory 25.

The series of data compression processing shown in FIG. 30 may beexecuted by controlling the decoder 2 d shown in FIG. 26 using anequivalent algorithm program to that shown in FIG. 30. This programshould be stored in a program storage unit (not shown in the drawing) ofa computer system comprising the decoder 2 d according to the presentinvention. In addition, this program may be stored in a computerreadable recording medium, and be read out from this recording mediumand stored in the program storage unit of the decoder 2 d so that theseries of data compression processing of the present invention can becarried out. Here, ‘computer readable recording medium’ means a mediumcapable of recording programs such as a computer external memory unit,semiconductor memory, a magnetic disk, an optical disk, a magnet-opticaldisk, and a magnetic tape. For example, the main unit of the decoder 2 dmay be structured so as to be connected internally or externally to aflexible disk apparatus (flexible disk drive) and an optical diskapparatus (optical disk drive). A flexible disk is loaded into theflexible disk drive, or a CD-ROM into an optical disk drive via aloading slot, and then a predetermined read-out operation is performed,thereby allowing installation of programs stored in these recordingmedia into the program storage unit configuring the decoder 2 d.Furthermore, this program may be stored in the program storage unit viaan information processing network such as the Internet.

The performance of the data compression/decompression system accordingto the third embodiment is compared to that of the datacompression/decompression system according to the first embodiment whenusing the solution to Poisson's equation. FIG. 32( a) is graph whereordinate represents the PSNR while abscissa represents the reductionrate of coding rate (compression rate) for the datacompression/decompression system according to the first embodiment(PHLCT) and the compression/decompression system according to the thirdembodiment (DMLCT) when using the original Lenna image. FIG. 32( b) is agraph where ordinate represents PSNR while abscissa represents thereduction rate of coding rate (compression rate) for the datacompression/decompression system according to the first embodiment(PHLCT) and the compression/decompression system according to the thirdembodiment (DMLCT) when using the original Barbara image. Upper bound n(bar) for the number of nodes n for the compression/decompression systemaccording to the third embodiment is notated as DMLCT(n) in FIGS. 32(a)and 32(b) for the three cases of n (bar)=2, 3, and 4. Compared to thedata compression/decompression system according to the first embodiment(PHLCT), the compression/decompression system according to the thirdembodiment (DMLCT) has high computational costs and complicatedalgorithms; however, implementation of higher compression effect can beconfirmed.

Other Embodiments

As described above, the present invention is described according to thefirst through the third embodiment; however, it should not be perceivedthat descriptions and drawings forming a part of this disclosure are notintended to limit the spirit and scope of the present invention. Variousalternative embodiments, working examples, and operational techniqueswill become apparent from this disclosure for those skills in the art.

Compression/decompression technology for still images using the JPEGalgorithm have been exemplified in the description of the first throughthe third embodiment given above; however, needless to say, the presentinvention is not limited to the compression/decompression technology forstill images, and may also be applied to compression/decompressiontechnology for moving images using the MPEG algorithm and relatedalgorithms. Furthermore, the present invention is not limited to thecompression/decompression technology for images, and may also be appliedto compression/decompression technology for audio data ranging fromhi-fi audio to telephone voice. The compression/decompression technologyfor audio data should be able to compress and decompress one-dimensionaldata since audio frequencies should be taken into consideration.

Structures including transmitting terminals 5, 5P, and 5 d, atransmission channel 32, which transmit compressed data sent from thetransmitting terminals 5, 5P, and 5 d, and receiving terminals 6, 6P,and 6 d, which receive the compressed data sent from the transmittingterminal 5, 5P and 5 d via the transmission channel 32, decompress thiscompressed data, and display the decompressed image data, are describedin the first through the third embodiment; however, it may be anelectronic device housing the encoders 1, 1 p, and 1 d and the decoders2, 2 p, and 2 d in the same unit as an electronic still camera.

As shown in FIG. 33, an electronic device (electronic still camera)according to another embodiment of the present invention is constitutedby an encoder 1 using the JPEG method, a decoder 2, a control corecircuit 3, an imaging device 11, a signal processing circuit 12, framememory (first memory unit) 13 c, a display 27, a display circuit 26, amemory card (second memory unit) 53, RAM 54, an input/output circuit 55,and data buses 51 and 52. A configuration where at least a part of theencoder 1, the decoder 2, the control core circuit 3, the signalprocessing circuit 12, the frame memory (first memory unit) 13 c, thedisplay circuit 26, the data buses 51 and 52, and the RAM 54 isintegrated onto a single semiconductor chip is possible.

As with the data compression/decompression system according to the firstembodiment, the encoder 1 includes a block dividing circuit 14, a PHLCTcircuit 15, a quantization circuit 16, and an entropy coding circuit 17,and the decoder 2 includes an entropy decoding circuit 21, adequantization circuit 22, an inverse PHLCT (IPHLCT) circuit 23, and ablock joining circuit 24.

The imaging device 11, the signal processing circuit 12, the framememory (first memory unit) 13 c, the display circuit 26, and the display27 are basically the same as with the data compression/decompressionsystem according to the first embodiment; however, each frame image datagenerated by the signal processing circuit 12 is transferred to at leasteither the frame memory (first memory unit) 13 c or the display circuit26 via the data bus 51. The display circuit 26 generates an image signalfrom each frame image data transferred from the data bus 51. The display27 displays the image signal generated by the display circuit 26 as thesubject image. The frame memory (first memory unit) 13 c is constitutedby rewritable semiconductor memory (SDRAM, DRAM, and random DRAM, forexample), and writes in and stores the image data for each frametransferred via the data bus 51, then reading out the stored image dataframe by frame. Each frame image data read out from the frame memory(first memory unit) 13 c is transferred to the encoder 1 via the databus 51. In the encoder 1, the block dividing circuit 14 divides theimage data of a single frame into a plurality of macro blocks defined bythe JPEG method, performs compression and decompression for each of therespective blocks.

While detailed configuration of the PHLCT circuit 15 is omitted from thedrawing, it includes an input image DCT coefficient computation module(input signal DCT coefficient computation module) 151, a first offsetfunction DCT coefficient computation module 152, a second offsetfunction DCT coefficient computation module 153, and a residualcomputation module 154, captures the image data of a single frame blockby block from the block dividing circuit 14, executes polyharmonic localcosine transform (PHLCT) on that image data, and outputs V_(k) ofresidual V=F−U, as with the compression/decompression system accordingto the first embodiment. The quantization circuit 16 and the entropycoding circuit 17 perform quantization and coding by referencingquantization thresholds stored in a quantization table stored in the RAM18 c and Huffman codes stored in a Huffman table stored in the RAM 19 c,as with the compression/decompression system according to the firstembodiment. The compressed data in block units generated by the entropycoding circuit 17 is transferred to at least either the memory card(second memory unit) 53 or the input-output circuit 55 via the data bus52. The memory card (second memory unit) 53 is detachably loaded intothe electronic still camera, and flash memory 53 m is provided withinthe memory card (second memory unit) 53. The flash memory 53 m writesand stores each compressed frame data transferred via the data bus 52,reads out the stored compressed data frame by frame, and then transfersit to the data bus 52. The input/output circuit 55 outputs eachcompressed frame data transferred via the data bus 52 to an externaldevice such as an external display, a personal computer, and a printerconnected to the electronic still camera, and transfers the compresseddata input from the external device to the data bus 52.

The compressed data read from the memory card (second memory unit) 53and the compressed data input via the input/output circuit 55 aretransferred to the entropy decoding circuit 21 of the decoder 2 via thedata bus 52. The entropy decoding circuit 21 converts the compresseddata in block units transferred via the data bus 52 into variable lengthcodes by referencing the Huffman codes stored in the RAM 19 c, therebygenerating decoded data in block units. The dequantization circuit 22dequantizes the decoded data in block units generated by the entropydecoding circuit 21 by referencing the quantization thresholds stored inthe quantization table in the RAM 18 c, thereby generating approximateresidual V_(k) ^(Q) of the residual V=F−U afterquantization-dequantization process. The inverse PHLCT circuit 23executes two-dimensional inverse polyharmonic local cosine transform(IPHLCT) to the dequantized, approximate residual V_(k) ^(Q) generatedby the dequantization circuit 22. The decoded data in block units havingbeen subjected to IPHLCT by the inverse PHLCT circuit 23 is joinedtogether by the block joining circuit 24, becoming frame data. Eachframe data joined together by the block joining circuit 24 istransferred to the frame memory (first memory unit) 13 c via the databus 51. The frame memory (first memory unit) 13 c then writes and storesthe each frame image data transferred from the inverse PHLCT circuit 23via the data bus 51. In addition, the display circuit 26 generates animage signal from each frame image data transferred from the decoder 2via the data bus 51, and then displays that image signal as the subjectimage on the display 27.

Note that the configuration of the electronic still camera may be apartial mode data compression/decompression system basing the encoder 1on the JPEG standard, and only applying inverse polyharmonic localcosine transform to the decoder 2.

As shown in FIG. 34, an electronic still camera according to yet anotherembodiment of the present invention is constituted by an encoder 1 dusing derivative matching local cosine transform (DMLCT), a decoder 2 dusing inverse derivative matching local cosine transform (IDMLCT), acontrol core circuit 3, an imaging device 11, a signal processingcircuit 12, frame memory (first memory unit) 13 c, a display 27, adisplay circuit 26, a memory card (second memory unit) 53, RAM 54, aninput/output circuit 55, and data buses 51 and 52.

As with the data compression/decompression system according to the thirdembodiment, the encoder 1 d includes a block dividing circuit 14, aDMLCT circuit 37, a quantization circuit 16, and an entropy codingcircuit 17, and the decoder 2 d includes an entropy decoding circuit 21,a dequantization circuit 22, an IDMLCT circuit 38, and a block joiningcircuit 24. Details of the DMLCT circuit 37 and the IDMLCT circuit 38are as described with the data compression/decompression systemaccording to the third embodiment, and descriptions of detailedconfigurations thereof and other configurations shown in block diagramsare understandable from the description of the electronic still camerashown in FIG. 33, and thus duplicate descriptions are omitted. Comparedto the case of the PHLCT/IPHLCT method using the solution to Poisson'sequation shown in FIG. 33, a configuration using the DMLCT circuit 37and the IDMLCT circuit 38, as shown in FIG. 34, has high computationcosts and complicated algorithms, but may provide a greater compressioneffect.

Needless to say, as such, the present invention includes a variety ofembodiments or the like not disclosed herein. Therefore, the technicalscope of the present invention should be defined by only inventivedescriptions according to the claims, which is appropriate according tothe aforementioned descriptions.

INDUSTRIAL APPLICABILITY

The electronic device, the data compression method, the datadecompression method, the data compression program, and the datadecompression program of the present invention are applicable toInternet and intranet related industries including the manufacturingindustry of electronic devices such as videophones and Internettelephones using compression/decompression processing technology forvarious data including image data and audio data.

In addition, the electronic device, the data compression method, thedata decompression method, the data compression program, and the datadecompression program of the present invention are applicable to themultimedia industry such as movies and DVDs, and the electronicsindustry such as mobile phones, copying machines, facsimiles, andprinters using compression/decompression processing technology forvarious data including image data and audio data.

1. A data compression method to be executed in a processor of a datacompression apparatus, by dividing input data equally into a pluralityof block regions, for compressing the input data, the method comprising:via the processor, computing DCT coefficients of an input signal in eachsubject block region and its adjacent block regions in the plurality ofblock regions; via the processor, computing DCT coefficients of agradient offset function, which offsets the gradient of the input signalat a block boundary between each subject block region and its adjacentblock regions from the DCT coefficients of the input signal; via theprocessor, computing a residual of the DCT coefficients of the inputsignal and the DCT coefficients of the gradient offset function; and viathe processor, obtaining compressed data by quantizing and encoding theresidual.
 2. The data compression method of claim 1, wherein thegradient offset function is provided by a solution corresponding to aminimal value of a mean squared curvature integral within the blockregions.
 3. The data compression method of claim 1, wherein the gradientoffset function is provided by an approximated solution to Neumannboundary value problem to Poisson's equation at a boundary of the blockregions.
 4. The data compression method of claim 1, wherein the gradientoffset function offsets a gradient at the block boundary and gradient ofthe input signal at a sampling point within the block regions.
 5. A datadecompression method to be executed in a processor of a datadecompression apparatus, by dividing input data equally into a pluralityof block regions, for decompressing compressed data, which results fromcompressing the input data of each block region, so as to reconstructthe input data, the method comprising: via the processor, executingdecoding and dequantization of the compressed data, and obtainingdequantized DCT coefficients of each block region; via the processor,computing DCT coefficients of a gradient offset function, which offsetsthe gradient of an input signal at a block boundary between each subjectblock region and its adjacent block regions, using the dequantized DCTcoefficients; via the processor, adding the DCT coefficients of thegradient offset function to the dequantized DCT coefficients andapproximately reconstructing the DCT coefficients of the input signal;via the processor, recovering an input signal for each of the respectiveblock regions using the approximately reconstructed DCT coefficients ofthe input signal; and via the processor, joining together the inputsignal for each of the respective block regions to reconstruct inputdata.
 6. A data decompression method to be executed in a processor of adata decompression apparatus, by dividing input data equally into aplurality of block regions, for decompressing compressed data, whichresults from compressing the input data of each of the block regions, soas to estimate the input data, the method comprising: via the processor,executing decoding and dequantization of the compressed data, andobtaining dequantized DCT coefficients of each of the respective blockregions; via the processor, computing DCT coefficients of a gradientoffset function, which offsets the gradient of an input signal at ablock boundary between each subject block region and its adjacent blockregions, using the dequantized DCT coefficients; via the processor,computing a quantization error using the DCT coefficients of thegradient offset function; via the processor, correcting the dequantizedDCT coefficients using the quantization error, and making an approximateestimation of DCT coefficients of the input signal; via the processor,recovering an input signal for each of the respective block regions fromthe approximately reconstructed DCT coefficients of the input signal;and via the processor, joining together the input signal for each of therespective block regions to reconstruct input data.
 7. A datadecompression method to be executed in a processor of a datadecompression apparatus, by dividing input data equally into a pluralityof block regions, for decompressing compressed data, which results fromcompressing the input data of each of the respective block regions, soas to estimate the input data, the method comprising: via the processor,executing decoding and dequantization of the compressed data, andobtaining dequantized DCT coefficients of each of the respective blockregions; via the processor, computing DCT coefficients of a gradientoffset function, which offsets the gradient of an input signal of thesubject block region, at a block boundary between each subject blockregion and its adjacent block regions, using the dequantized DCTcoefficients; via the processor, computing a quantization error usingthe DCT coefficients of the gradient offset function; via the processor,adding a quadratic surface, which reduces blocking artifact, to adjacentblock regions and computing DCT coefficients of the quadratic surface;via the processor, correcting the dequantized DCT coefficients using thequantization error and the DCT coefficients of the quadratic surface,and approximately reconstructing the DCT coefficients of the inputsignal; via the processor, recovering an input signal for each of theblock regions using the approximately reconstructed DCT coefficients ofthe input signal; and via the processor, joining together the inputsignal for each of the respective block regions to reconstruct inputdata.
 8. An electronic device, by dividing input data equally into aplurality of block regions, for compressing the input data, comprising:an input signal DCT coefficient computation module configured to computeDCT coefficients of an input signal in each subject block region and itsadjacent block regions in the plurality of block regions; an offsetfunction DCT coefficient computation module configured to compute DCTcoefficients of a gradient offset function, which offsets the gradientof the input signal at a block boundary between each subject blockregion and its adjacent block regions using the DCT coefficients of theinput signal; a residual computation module configured to compute aresidual of the DCT coefficients of the input signal and the DCTcoefficients of the gradient offset function; a quantization circuitconfigured to obtain compressed data by quantizing and encoding theresidual; and a coding circuit configured to encode the compressed data.9. The electronic device of claim 8, wherein the gradient offsetfunction is provided by a solution corresponding to a minimal value of amean squared curvature integral within the block regions.
 10. Theelectronic device of claim 8, wherein the gradient offset function isprovided by an approximated solution to Neumann boundary value problemto Poisson's equation at a boundary of the block regions.
 11. Theelectronic device of claim 8, wherein the gradient offset functionoffsets a gradient at the block boundary and the gradient of the inputsignal at a sampling point within the block regions.
 12. An electronicdevice, by dividing input data equally into a plurality of blockregions, for decompressing compressed data, which results fromcompressing the input data of each of the block regions, so as toreconstruct the input data, comprising: a decoding circuit configured todecode the compressed data; a dequantization circuit configured toexecute dequantization of the decoded compressed data, and to obtaindequantized DCT coefficients in each block region; a DCT coefficientinput module configured to receive the dequantized DCT coefficients to asubject block region and its adjacent block regions, respectively; anoffset function DCT coefficient computation module configured to computeDCT coefficients of a gradient offset function, which offsets thegradient of an input signal in the subject block region, at a blockboundary between each subject block region and its adjacent blockregions, using the dequantized DCT coefficients; an input signal DCTcoefficient approximation/reconstruction module, adding the DCTcoefficients of the gradient offset function to the dequantized DCTcoefficients, configured to approximately reconstruct DCT coefficientsof the input signal; and a block joining circuit, recovering an inputsignal in each of the block regions using the approximatelyreconstructed DCT coefficients of the input signal, configured to jointogether the input signal in each block regions to reconstruct the inputdata.
 13. An electronic device, by dividing input data equally into aplurality of block regions, for decompressing compressed data, whichresults from compressing the input data of each of the block regions, soas to estimate the input data, comprising: a decoding circuit configuredto decode the compressed data; a dequantization circuit configured toexecute dequantization of the decoded compressed data, and to obtaindequantized DCT coefficients of each of the respective block regions; aDCT coefficient input module configured to receive the dequantized DCTcoefficients to a subject block region and its adjacent block regions,respectively; an offset function DCT coefficient computation moduleconfigured to compute DCT coefficients of a gradient offset function,which offsets the gradient of an input signal in the subject blockregion, at a block boundary between the subject block region and itsadjacent block regions, using the dequantized DCT coefficients; aquantization error computation module configured to compute aquantization error using the DCT coefficients of the gradient offsetfunction; a quantization error correction module configured to correctthe dequantized DCT coefficients using the quantization error, and tomake an approximate estimation of DCT coefficients of the input signal;and a block joining circuit, recovering an input signal for each of theblock regions using the approximately estimated DCT coefficients of theinput signal, configured to join together the input signal in each blockregion to estimate the input data.
 14. An electronic device, by dividinginput data equally into a plurality of block regions, for decompressingcompressed data, which results from compressing the input data of eachof the block regions, so as to estimate the input data, comprising: adecoding circuit configured to decode the compressed data; adequantization circuit configured to execute dequantization of thedecoded compressed data, and to obtain dequantized DCT coefficients ofeach of the respective block regions; a DCT coefficient input moduleconfigured to receive the dequantized DCT coefficients to a subjectblock region and its adjacent block regions, respectively; an offsetfunction DCT coefficient computation module configured to compute DCTcoefficients of a gradient offset function, which offsets the gradientof an input signal in the subject block region, at a block boundarybetween each subject block region and its adjacent block regions, usingthe dequantized DCT coefficients; a quantization error computationmodule configured to compute a quantization error using the DCTcoefficients of the gradient offset function; a quadratic surface DCTcoefficient computation module, adding a quadratic surface reducingblocking artifact to the adjacent block regions, configured to computeDCT coefficients of the quadratic surface; a quadratic surfacequantization error correction module configured to correct thedequantized DCT coefficients using the quantization error and the DCTcoefficients of the quadratic surface, and to approximately estimate DCTcoefficients of the input signal; a module configured to recover aninput signal for each of the respective block regions from theapproximately estimated DCT coefficients of the input signal; and ablock joining circuit, recovering an input signal for each of the blockregions using the approximately estimated DCT coefficients of the inputsignal, configured to join together the input signal for each of therespective block regions to estimate the input data.
 15. An electronicdevice, comprising: a first memory unit configured to store input data;a block dividing circuit configured to divide input data read out fromthe first memory unit equally into a plurality of block regions; aninput signal DCT coefficient computation module configured to computeDCT coefficients of an input signal in each subject block region and itsadjacent block regions in the plurality of block regions; an offsetfunction DCT coefficient computation module configured to compute DCTcoefficients of a gradient offset function, which offsets the gradientof the input signal at a block boundary between each subject blockregion and its adjacent block regions from the DCT coefficients of theinput signal; a residual computation module configured to compute aresidual of the DCT coefficients of the input signal and the DCTcoefficients of the gradient offset function; a quantization circuitconfigured to obtain compressed data by quantizing and encoding theresidual; a coding circuit configured to encode the compressed data; asecond memory unit configured to store the encoded, compressed data; adecoding circuit configured to decode the compressed data read out fromthe second memory unit; a dequantization circuit configured to executedequantization of the decoded compressed data, and to obtain dequantizedDCT coefficients of each of the respective block regions; a DCTcoefficient input module configured to receive the dequantized DCTcoefficients to a subject block region and its adjacent block regions,respectively; an offset function DCT coefficient computation moduleconfigured to compute DCT coefficients of a gradient offset function,which offsets the gradient of the input signal in the subject blockregion, at a block boundary between each subject block region and itsadjacent block regions, using the dequantized DCT coefficients; an inputsignal DCT coefficient approximation/reconstruction module, adding theDCT coefficients of the gradient offset function to the dequantized DCTcoefficients, configured to approximately reconstruct DCT coefficientsof the input signal; and a block joining circuit, recovering an inputsignal for each of the block regions from the approximatelyreconstructed DCT coefficients of the input signal, configured to jointogether the input signal for each of the respective block regions toreconstruct the input data.
 16. A data compression product, comprising:a computer-readable medium; and non-transitory, computer-readable codestored on said computer-readable medium, which non-transitory,computer-readable code is effective to cause a processor of an encoderto execute a series of instructions to compress input data by dividingthe input data equally into a plurality of block regions, the series ofinstructions being effective to cause the processor to compute DCTcoefficients of an input signal in each subject block region and itsadjacent block regions in the plurality of block regions; compute DCTcoefficients of a gradient offset function, which offsets the gradientof the input signal at a block boundary between each subject blockregion and its adjacent block regions using the DCT coefficients of theinput signal; compute a residual of the DCT coefficients of the inputsignal and the DCT coefficients of the gradient offset function; andobtain compressed data by quantizing and encoding the residual.
 17. Adata decompression compression product, comprising: a computer-readablemedium; and non-transitory, computer-readable code stored on saidcomputer-readable medium, which non-transitory, computer-readable codeis effective to cause a processor of a decoder to execute a series ofinstructions to decompress input data by dividing the input data equallyinto a plurality of block regions and by decompressing compressed data,the series of instructions being effective to cause the processor toexecute decoding and dequantization of the compressed data, and obtaindequantized DCT coefficients of each of the respective block regions;compute DCT coefficients of a gradient offset function, which offsets agradient of an input signal in the subject block region, at a blockboundary between each subject block region and its adjacent blockregions, using the dequantized DCT coefficients; add the DCTcoefficients of the gradient offset function to the dequantized DCTcoefficients and approximately reconstruct DCT coefficients of the inputsignal; recover an input signal for each of the respective block regionsfrom the approximately reconstructed DCT coefficients of the inputsignal; and join together the input signal in each of the respectiveblock regions to reconstruct input data.
 18. A data decompressioncompression product, comprising: a computer-readable medium; andnon-transitory, computer-readable code stored on said computer-readablemedium, which non-transitory, computer-readable code is effective tocause a processor of a decoder to execute a series of instructions toestimate input data by dividing the input data equally into a pluralityof block regions and by decompressing compressed data, the series ofinstructions being effective to cause the processor to execute decodingand dequantization of the compressed data, and obtain dequantized DCTcoefficients of each of the respective block regions; compute DCTcoefficients of a gradient offset function, which offsets the gradientof an input signal in the subject block region, at a block boundarybetween the subject block region and its adjacent block regions, usingthe dequantized DCT coefficients; compute a quantization error from theDCT coefficients U^(Q) of the gradient offset function; correct thedequantized DCT coefficients using the quantization error, and make anapproximate estimation of DCT coefficients of the input signal; recoveran input signal for each of the respective block regions from theapproximately estimated DCT coefficients of the input signal; and jointogether the input signal in each of the respective block regions toestimate the input data.
 19. A data decompression product, comprising: acomputer-readable medium; and non-transitory, computer-readable codestored on said computer-readable medium, which non-transitory,computer-readable code is effective to cause a processor of a decoder toexecute a series of instructions to estimate input data by dividing theinput data equally into a plurality of block regions and bydecompressing compressed data, the series of instructions beingeffective to cause the processor to execute decoding and dequantizationof the compressed data, and obtain dequantized DCT coefficients of eachof the respective block regions; compute DCT coefficients of a gradientoffset function, which offsets the gradient of an input signal in thesubject block region, at a block boundary between each subject blockregion and its adjacent block regions, using the dequantized DCTcoefficients; compute a quantization error from the DCT coefficientsU^(Q) of the gradient offset function; add a quadratic surface, whichreduces blocking artifact, to adjacent block regions, and compute DCTcoefficients of the quadratic surface; correct the dequantized DCTcoefficients using the quantization error and the DCT coefficients ofthe quadratic surface, and approximately estimate DCT coefficients ofthe input signal; recover an input signal for each of the respectiveblock regions from the approximately estimated DCT coefficients of theinput signal; and join together the input signal in each of therespective block regions to estimate the input data.